diff --git a/BookmarkForm.cs b/BookmarkForm.cs
index 0b4ea02..831b834 100644
--- a/BookmarkForm.cs
+++ b/BookmarkForm.cs
@@ -36,7 +36,6 @@ namespace FizzyLauncher
 
         protected WebParser webParser = null;
         protected WebClient webClient = null;
-        protected bool isBusy = false;
         protected AppSession appSession = null;
 
 
@@ -93,6 +92,7 @@ namespace FizzyLauncher
             //
             // button1
             //
+            this.button1.AcceptButton = null;
             this.button1.ActiveImage = null;
             this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.button1.BackColor = System.Drawing.Color.Transparent;
@@ -151,9 +151,9 @@ namespace FizzyLauncher
             this.textBox1.Location = new System.Drawing.Point(110, 20);
             this.textBox1.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10);
             this.textBox1.Name = "textBox1";
-            this.textBox1.Padding = new System.Windows.Forms.Padding(10, 10, 9, 9);
+            this.textBox1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.textBox1.ReadOnly = false;
-            this.textBox1.Size = new System.Drawing.Size(222, 35);
+            this.textBox1.Size = new System.Drawing.Size(222, 34);
             this.textBox1.TabIndex = 0;
             this.textBox1.UseSystemPasswordChar = false;
             //
@@ -187,6 +187,7 @@ namespace FizzyLauncher
             //
             // memoBox1
             //
+            this.memoBox1.AcceptButton = null;
             this.memoBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.memoBox1.BackColor = System.Drawing.Color.Transparent;
@@ -194,13 +195,14 @@ namespace FizzyLauncher
             this.memoBox1.Location = new System.Drawing.Point(110, 112);
             this.memoBox1.Margin = new System.Windows.Forms.Padding(10, 6, 10, 6);
             this.memoBox1.Name = "memoBox1";
-            this.memoBox1.Padding = new System.Windows.Forms.Padding(10, 10, 3, 9);
+            this.memoBox1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.memoBox1.ReadOnly = false;
             this.memoBox1.Size = new System.Drawing.Size(259, 105);
             this.memoBox1.TabIndex = 2;
             //
             // memoBox2
             //
+            this.memoBox2.AcceptButton = null;
             this.memoBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
             | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
@@ -209,7 +211,7 @@ namespace FizzyLauncher
             this.memoBox2.Location = new System.Drawing.Point(110, 251);
             this.memoBox2.Margin = new System.Windows.Forms.Padding(10, 6, 10, 6);
             this.memoBox2.Name = "memoBox2";
-            this.memoBox2.Padding = new System.Windows.Forms.Padding(10, 10, 3, 9);
+            this.memoBox2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.memoBox2.ReadOnly = false;
             this.memoBox2.Size = new System.Drawing.Size(259, 180);
             this.memoBox2.TabIndex = 3;
@@ -240,7 +242,7 @@ namespace FizzyLauncher
             this.textBox2.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10);
             this.textBox2.Name = "textBox2";
             this.textBox2.NormalImage = null;
-            this.textBox2.Padding = new System.Windows.Forms.Padding(10, 9, 9, 9);
+            this.textBox2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.textBox2.Size = new System.Drawing.Size(259, 34);
             this.textBox2.TabIndex = 1;
             this.textBox2.UseSystemPasswordChar = false;
@@ -252,9 +254,9 @@ namespace FizzyLauncher
             this.pictureBox1.BackColor = System.Drawing.Color.Transparent;
             this.pictureBox1.ErrorImage = null;
             this.pictureBox1.InitialImage = null;
-            this.pictureBox1.Location = new System.Drawing.Point(337, 20);
+            this.pictureBox1.Location = new System.Drawing.Point(337, 21);
             this.pictureBox1.Name = "pictureBox1";
-            this.pictureBox1.Size = new System.Drawing.Size(32, 35);
+            this.pictureBox1.Size = new System.Drawing.Size(32, 34);
             this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
             this.pictureBox1.TabIndex = 201;
             this.pictureBox1.TabStop = false;
@@ -305,31 +307,9 @@ namespace FizzyLauncher
         {
             base.OnShown(e);
 
-            this.DialogResult = DialogResult.None;
-
             textBox2.Focus();
         }
 
-        protected override void OnClosing(CancelEventArgs e)
-        {
-            base.OnClosing(e);
-
-            if (IsBusy)
-            {
-                e.Cancel = true;
-            }
-        }
-
-        protected override void OnKeyDown(KeyEventArgs e)
-        {
-            if (e.KeyCode == Keys.Escape)
-            {
-                this.Close();
-            }
-
-            base.OnKeyDown(e);
-        }
-
 
         public BookmarkResult Model
         {
@@ -346,20 +326,20 @@ namespace FizzyLauncher
             };
         }
 
-        protected bool IsBusy
+        protected new bool IsBusy
         {
-            get => isBusy;
+            get => base.IsBusy;
             set
             {
-                isBusy = value;
+                base.IsBusy = value;
 
-                ThreadControl.SetValue(pictureBox2, (isBusy ? UIcon.GetImage("loading_block") : null));
+                UIControl.SetValue(pictureBox2, (this.IsBusy ? UIcon.GetImage("loading_block") : null));
 
-                ThreadControl.SetEnable(textBox1, !isBusy);
-                ThreadControl.SetEnable(textBox2, !isBusy);
-                ThreadControl.SetEnable(memoBox1 , !isBusy);
-                ThreadControl.SetEnable(memoBox2, !isBusy);
-                ThreadControl.SetEnable(button1, !isBusy);
+                UIControl.SetEnable(textBox1, !this.IsBusy);
+                UIControl.SetEnable(textBox2, !this.IsBusy);
+                UIControl.SetEnable(memoBox1, !this.IsBusy);
+                UIControl.SetEnable(memoBox2, !this.IsBusy);
+                UIControl.SetEnable(button1, !this.IsBusy);
             }
         }
 
@@ -395,16 +375,16 @@ namespace FizzyLauncher
 
                 if (rs.Item == null) rs.Item = new BookmarkItem();
 
-                if (!string.IsNullOrWhiteSpace(rs.Item.SiteName)) ThreadControl.SetText(textBox1.TextBox, rs.Item.SiteName);
-                if (!string.IsNullOrWhiteSpace(rs.Item.SiteDescription)) ThreadControl.SetText(memoBox1.TextBox, rs.Item.SiteDescription);
+                if (!string.IsNullOrWhiteSpace(rs.Item.SiteName)) UIControl.SetText(textBox1.TextBox, rs.Item.SiteName);
+                if (!string.IsNullOrWhiteSpace(rs.Item.SiteDescription)) UIControl.SetText(memoBox1.TextBox, rs.Item.SiteDescription);
 
                 if (string.IsNullOrWhiteSpace(rs.IconURL))
                 {
-                    ThreadControl.Clear(pictureBox1);
+                    UIControl.Clear(pictureBox1);
                 }
                 else
                 {
-                    ThreadControl.SetValue(pictureBox1, webParser.RetrieveImage(rs.IconURL));
+                    UIControl.SetValue(pictureBox1, webParser.RetrieveImage(rs.IconURL));
                 }
 
                 IsBusy = false;
diff --git a/BookmarkManager.csproj b/BookmarkManager.csproj
index 11cc7fc..7efa7a1 100644
--- a/BookmarkManager.csproj
+++ b/BookmarkManager.csproj
@@ -12,9 +12,9 @@
     <Company>Hi, I'm Ray</Company>
     <Product>Bookmark Manager</Product>
     <Copyright>Ray Lam</Copyright>
-    <AssemblyVersion>0.4.3.030</AssemblyVersion>
-    <FileVersion>0.4.3.030</FileVersion>
-    <Version>0.4.3.030</Version>
+    <AssemblyVersion>0.4.4.026</AssemblyVersion>
+    <FileVersion>0.4.4.026</FileVersion>
+    <Version>0.4.4.026</Version>
     <PackageId>bookmarkmanager</PackageId>
   </PropertyGroup>
 
@@ -96,11 +96,6 @@
       <AutoGen>True</AutoGen>
       <DependentUpon>AppResource.resx</DependentUpon>
     </Compile>
-    <Compile Update="UIResource.Designer.cs">
-      <DesignTime>True</DesignTime>
-      <AutoGen>True</AutoGen>
-      <DependentUpon>UIResource.resx</DependentUpon>
-    </Compile>
     <Compile Update="UpdateIconsForm.cs" />
     <Compile Update="FindForm.cs" />
     <Compile Update="BookmarkForm.cs" />
@@ -112,10 +107,6 @@
       <Generator>ResXFileCodeGenerator</Generator>
       <LastGenOutput>AppResource.Designer.cs</LastGenOutput>
     </EmbeddedResource>
-    <EmbeddedResource Update="UIResource.resx">
-      <Generator>PublicResXFileCodeGenerator</Generator>
-      <LastGenOutput>UIResource.Designer.cs</LastGenOutput>
-    </EmbeddedResource>
   </ItemGroup>
 
   <ItemGroup>
diff --git a/FindForm.cs b/FindForm.cs
index 56f28f6..69865ba 100644
--- a/FindForm.cs
+++ b/FindForm.cs
@@ -25,8 +25,6 @@ namespace FizzyLauncher
 
             treeView1 = treeView;
 
-            this.StartPosition = FormStartPosition.WindowsDefaultLocation;
-
             textBox1.PreviewKeyDown += textBox1_PreviewKeyDown;
         }
 
@@ -38,9 +36,9 @@ namespace FizzyLauncher
             this.textBox1 = new RyzStudio.Windows.ThemedForms.TTextBox();
             this.button1 = new RyzStudio.Windows.ThemedForms.TButton();
             this.SuspendLayout();
-            // 
+            //
             // label1
-            // 
+            //
             this.label1.AutoSize = true;
             this.label1.BackColor = System.Drawing.Color.Transparent;
             this.label1.ForeColor = System.Drawing.SystemColors.ControlText;
@@ -52,9 +50,9 @@ namespace FizzyLauncher
             this.label1.TabIndex = 153;
             this.label1.Text = "Find";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
+            //
             // button2
-            // 
+            //
             this.button2.ActiveImage = null;
             this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.button2.BackColor = System.Drawing.Color.Transparent;
@@ -68,10 +66,10 @@ namespace FizzyLauncher
             this.button2.Size = new System.Drawing.Size(128, 32);
             this.button2.TabIndex = 2;
             this.button2.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button2_MouseClick);
-            // 
+            //
             // tHorizontalSeparator1
-            // 
-            this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            //
+            this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0);
             this.tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0);
@@ -85,11 +83,11 @@ namespace FizzyLauncher
             this.tHorizontalSeparator1.Size = new System.Drawing.Size(444, 22);
             this.tHorizontalSeparator1.TabIndex = 188;
             this.tHorizontalSeparator1.TabStop = false;
-            // 
+            //
             // textBox1
-            // 
+            //
             this.textBox1.AcceptButton = this.button2;
-            this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.textBox1.BackColor = System.Drawing.Color.Transparent;
             this.textBox1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
@@ -101,9 +99,9 @@ namespace FizzyLauncher
             this.textBox1.Size = new System.Drawing.Size(328, 35);
             this.textBox1.TabIndex = 0;
             this.textBox1.UseSystemPasswordChar = false;
-            // 
+            //
             // button1
-            // 
+            //
             this.button1.ActiveImage = null;
             this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.button1.BackColor = System.Drawing.Color.Transparent;
@@ -117,9 +115,9 @@ namespace FizzyLauncher
             this.button1.Size = new System.Drawing.Size(128, 32);
             this.button1.TabIndex = 1;
             this.button1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button1_MouseClick);
-            // 
+            //
             // FindForm
-            // 
+            //
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
             this.ClientSize = new System.Drawing.Size(464, 151);
             this.Controls.Add(this.button1);
@@ -139,20 +137,9 @@ namespace FizzyLauncher
         {
             base.OnShown(e);
 
-            this.DialogResult = System.Windows.Forms.DialogResult.None;
-
             textBox1.Focus();
         }
 
-        protected override void OnClosing(CancelEventArgs e)
-        {
-            base.OnClosing(e);
-
-            e.Cancel = true;
-
-            this.Hide();
-        }
-
 
         [Browsable(false)]
         public string Password => textBox1.Text;
diff --git a/MainForm.cs b/MainForm.cs
index b372d6b..ecff841 100644
--- a/MainForm.cs
+++ b/MainForm.cs
@@ -66,7 +66,7 @@ namespace FizzyLauncher
             base.OnLoad(e);
 
             //ThreadControl.SetVisible(this, false);
-            ThreadControl.SetSize(this, 300, 580);
+            UIControl.SetSize(this, 300, 580);
 
             List<string> supportedFileExtensions = GetSupportedFileTypes();
 
@@ -155,55 +155,55 @@ namespace FizzyLauncher
                 switch (value)
                 {
                     case AppMode.Clear:
-                        ThreadControl.SetText(this, AppResource.app_name);
+                        UIControl.SetText(this, AppResource.app_name);
 
-                        ThreadControl.SetEnable(closeToolStripMenuItem, false);
+                        UIControl.SetEnable(closeToolStripMenuItem, false);
 
-                        ThreadControl.SetEnable(saveToolStripMenuItem, false);
-                        ThreadControl.SetEnable(toolStripButton3, false);
-                        ThreadControl.SetEnable(saveAsToolStripMenuItem, false);
+                        UIControl.SetEnable(saveToolStripMenuItem, false);
+                        UIControl.SetEnable(toolStripButton3, false);
+                        UIControl.SetEnable(saveAsToolStripMenuItem, false);
 
-                        ThreadControl.SetEnable(findToolStripMenuItem, false);
-                        ThreadControl.SetEnable(toolStripButton4, false);
+                        UIControl.SetEnable(findToolStripMenuItem, false);
+                        UIControl.SetEnable(toolStripButton4, false);
 
-                        ThreadControl.SetEnable(toolStripMenuItem9, false);
+                        UIControl.SetEnable(toolStripMenuItem9, false);
 
-                        ThreadControl.SetEnable(expandAllToolStripMenuItem, false);
-                        ThreadControl.SetEnable(collapseAllToolStripMenuItem, false);
+                        UIControl.SetEnable(expandAllToolStripMenuItem, false);
+                        UIControl.SetEnable(collapseAllToolStripMenuItem, false);
 
                         break;
                     case AppMode.Open:
-                        ThreadControl.SetEnable(closeToolStripMenuItem, true);
+                        UIControl.SetEnable(closeToolStripMenuItem, true);
 
-                        ThreadControl.SetEnable(saveToolStripMenuItem, true);
-                        ThreadControl.SetEnable(toolStripButton3, true);
-                        ThreadControl.SetEnable(saveAsToolStripMenuItem, true);
+                        UIControl.SetEnable(saveToolStripMenuItem, true);
+                        UIControl.SetEnable(toolStripButton3, true);
+                        UIControl.SetEnable(saveAsToolStripMenuItem, true);
 
-                        ThreadControl.SetEnable(findToolStripMenuItem, true);
-                        ThreadControl.SetEnable(toolStripButton4, true);
+                        UIControl.SetEnable(findToolStripMenuItem, true);
+                        UIControl.SetEnable(toolStripButton4, true);
 
-                        ThreadControl.SetEnable(toolStripMenuItem9, true);
+                        UIControl.SetEnable(toolStripMenuItem9, true);
 
-                        ThreadControl.SetEnable(expandAllToolStripMenuItem, true);
-                        ThreadControl.SetEnable(collapseAllToolStripMenuItem, true);
+                        UIControl.SetEnable(expandAllToolStripMenuItem, true);
+                        UIControl.SetEnable(collapseAllToolStripMenuItem, true);
 
                         break;
                     case AppMode.New:
-                        ThreadControl.SetText(this, AppResource.app_name);
+                        UIControl.SetText(this, AppResource.app_name);
 
-                        ThreadControl.SetEnable(closeToolStripMenuItem, true);
+                        UIControl.SetEnable(closeToolStripMenuItem, true);
 
-                        ThreadControl.SetEnable(saveToolStripMenuItem, false);
-                        ThreadControl.SetEnable(toolStripButton3, false);
-                        ThreadControl.SetEnable(saveAsToolStripMenuItem, true);
+                        UIControl.SetEnable(saveToolStripMenuItem, false);
+                        UIControl.SetEnable(toolStripButton3, false);
+                        UIControl.SetEnable(saveAsToolStripMenuItem, true);
 
-                        ThreadControl.SetEnable(findToolStripMenuItem, true);
-                        ThreadControl.SetEnable(toolStripButton4, true);
+                        UIControl.SetEnable(findToolStripMenuItem, true);
+                        UIControl.SetEnable(toolStripButton4, true);
 
-                        ThreadControl.SetEnable(toolStripMenuItem9, true);
+                        UIControl.SetEnable(toolStripMenuItem9, true);
 
-                        ThreadControl.SetEnable(expandAllToolStripMenuItem, true);
-                        ThreadControl.SetEnable(collapseAllToolStripMenuItem, true);
+                        UIControl.SetEnable(expandAllToolStripMenuItem, true);
+                        UIControl.SetEnable(collapseAllToolStripMenuItem, true);
 
                         break;
                     default: break;
@@ -281,7 +281,7 @@ namespace FizzyLauncher
                 result = await LoadFile(openFileDialog1.FileName);
                 if (result.IsSuccess)
                 {
-                    ThreadControl.SetText(this, Path.GetFileNameWithoutExtension(openFileDialog1.FileName) + " - " + AppResource.app_name);
+                    UIControl.SetText(this, Path.GetFileNameWithoutExtension(openFileDialog1.FileName) + " - " + AppResource.app_name);
                 }
                 else
                 {
@@ -777,8 +777,8 @@ namespace FizzyLauncher
         {
             bool state = (treeView1.HasChanged && ApplicationMode == AppMode.Open);
 
-            ThreadControl.SetEnable(saveToolStripMenuItem, state);
-            ThreadControl.SetEnable(toolStripButton3, state);
+            UIControl.SetEnable(saveToolStripMenuItem, state);
+            UIControl.SetEnable(toolStripButton3, state);
         }
 
         protected string BuildOpenFileSupportedFiles(List<string> supportList)
@@ -1063,7 +1063,7 @@ namespace FizzyLauncher
 
                 if (treeView1.Nodes.Count > 0)
                 {
-                    ThreadControl.Expand(treeView1.Nodes[0]);
+                    UIControl.Expand(treeView1.Nodes[0]);
                 }
 
                 ApplicationMode = AppMode.Open;
@@ -1073,7 +1073,7 @@ namespace FizzyLauncher
                     treeView1.SetNoChanges();
                 }
 
-                ThreadControl.SetFocus(treeView1);
+                UIControl.SetFocus(treeView1);
 
                 return result;
             });
diff --git a/OptionsForm.cs b/OptionsForm.cs
index ad52491..1c2e5d7 100644
--- a/OptionsForm.cs
+++ b/OptionsForm.cs
@@ -78,6 +78,7 @@ namespace FizzyLauncher
             // 
             // button1
             // 
+            this.button1.AcceptButton = null;
             this.button1.ActiveImage = null;
             this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.button1.BackColor = System.Drawing.Color.Transparent;
@@ -90,6 +91,7 @@ namespace FizzyLauncher
             this.button1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.button1.Size = new System.Drawing.Size(128, 32);
             this.button1.TabIndex = 6;
+            this.button1.TabStop = false;
             this.button1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button1_MouseClick);
             // 
             // pickerBox1
@@ -101,9 +103,10 @@ namespace FizzyLauncher
             this.pickerBox1.Location = new System.Drawing.Point(285, 127);
             this.pickerBox1.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
             this.pickerBox1.Name = "pickerBox1";
-            this.pickerBox1.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
+            this.pickerBox1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.pickerBox1.Size = new System.Drawing.Size(84, 35);
             this.pickerBox1.TabIndex = 2;
+            this.pickerBox1.TabStop = false;
             this.pickerBox1.Value = true;
             // 
             // label6
@@ -129,9 +132,10 @@ namespace FizzyLauncher
             this.pickerBox2.Location = new System.Drawing.Point(285, 168);
             this.pickerBox2.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
             this.pickerBox2.Name = "pickerBox2";
-            this.pickerBox2.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
+            this.pickerBox2.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.pickerBox2.Size = new System.Drawing.Size(84, 35);
             this.pickerBox2.TabIndex = 3;
+            this.pickerBox2.TabStop = false;
             this.pickerBox2.Value = true;
             // 
             // label7
@@ -171,9 +175,10 @@ namespace FizzyLauncher
             this.pickerBox3.Location = new System.Drawing.Point(285, 21);
             this.pickerBox3.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
             this.pickerBox3.Name = "pickerBox3";
-            this.pickerBox3.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
+            this.pickerBox3.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.pickerBox3.Size = new System.Drawing.Size(84, 35);
             this.pickerBox3.TabIndex = 0;
+            this.pickerBox3.TabStop = false;
             // 
             // tHorizontalSeparator1
             // 
@@ -236,10 +241,11 @@ namespace FizzyLauncher
             this.textBox1.Location = new System.Drawing.Point(192, 234);
             this.textBox1.Margin = new System.Windows.Forms.Padding(10, 0, 0, 10);
             this.textBox1.Name = "textBox1";
-            this.textBox1.Padding = new System.Windows.Forms.Padding(10, 10, 9, 9);
+            this.textBox1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.textBox1.ReadOnly = false;
             this.textBox1.Size = new System.Drawing.Size(177, 35);
             this.textBox1.TabIndex = 4;
+            this.textBox1.TabStop = false;
             this.textBox1.UseSystemPasswordChar = false;
             // 
             // pickerBox4
@@ -251,9 +257,10 @@ namespace FizzyLauncher
             this.pickerBox4.Location = new System.Drawing.Point(285, 279);
             this.pickerBox4.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
             this.pickerBox4.Name = "pickerBox4";
-            this.pickerBox4.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
+            this.pickerBox4.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.pickerBox4.Size = new System.Drawing.Size(84, 35);
             this.pickerBox4.TabIndex = 5;
+            this.pickerBox4.TabStop = false;
             this.pickerBox4.Value = true;
             // 
             // label2
@@ -279,9 +286,10 @@ namespace FizzyLauncher
             this.pickerBox5.Location = new System.Drawing.Point(285, 85);
             this.pickerBox5.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
             this.pickerBox5.Name = "pickerBox5";
-            this.pickerBox5.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
+            this.pickerBox5.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.pickerBox5.Size = new System.Drawing.Size(84, 35);
             this.pickerBox5.TabIndex = 1;
+            this.pickerBox5.TabStop = false;
             this.pickerBox5.Value = true;
             // 
             // label3
@@ -331,8 +339,6 @@ namespace FizzyLauncher
         {
             base.OnShown(e);
 
-            this.DialogResult = System.Windows.Forms.DialogResult.None;
-
             if (parentForm == null)
             {
                 return;
diff --git a/PasswordForm.cs b/PasswordForm.cs
index 50ebf31..6dfcdb3 100644
--- a/PasswordForm.cs
+++ b/PasswordForm.cs
@@ -17,8 +17,6 @@ namespace FizzyLauncher
         {
             InitializeComponent();
 
-            this.StartPosition = FormStartPosition.WindowsDefaultLocation;
-
             textBox1.TextBox.MaxLength = 255;
             textBox1.PreviewKeyDown += textBox1_PreviewKeyDown;
         }
@@ -30,9 +28,9 @@ namespace FizzyLauncher
             this.tHorizontalSeparator1 = new RyzStudio.Windows.Forms.THorizontalSeparator();
             this.textBox1 = new RyzStudio.Windows.ThemedForms.TTextBox();
             this.SuspendLayout();
-            // 
+            //
             // label1
-            // 
+            //
             this.label1.AutoSize = true;
             this.label1.BackColor = System.Drawing.Color.Transparent;
             this.label1.ForeColor = System.Drawing.SystemColors.ControlText;
@@ -44,9 +42,9 @@ namespace FizzyLauncher
             this.label1.TabIndex = 153;
             this.label1.Text = "Password";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
+            //
             // button1
-            // 
+            //
             this.button1.ActiveImage = null;
             this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.button1.BackColor = System.Drawing.Color.Transparent;
@@ -60,10 +58,10 @@ namespace FizzyLauncher
             this.button1.Size = new System.Drawing.Size(128, 32);
             this.button1.TabIndex = 1;
             this.button1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button1_MouseClick);
-            // 
+            //
             // tHorizontalSeparator1
-            // 
-            this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            //
+            this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0);
             this.tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0);
@@ -77,11 +75,11 @@ namespace FizzyLauncher
             this.tHorizontalSeparator1.Size = new System.Drawing.Size(444, 22);
             this.tHorizontalSeparator1.TabIndex = 188;
             this.tHorizontalSeparator1.TabStop = false;
-            // 
+            //
             // textBox1
-            // 
+            //
             this.textBox1.AcceptButton = this.button1;
-            this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.textBox1.BackColor = System.Drawing.Color.Transparent;
             this.textBox1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
@@ -93,9 +91,9 @@ namespace FizzyLauncher
             this.textBox1.Size = new System.Drawing.Size(328, 35);
             this.textBox1.TabIndex = 0;
             this.textBox1.UseSystemPasswordChar = true;
-            // 
+            //
             // PasswordForm
-            // 
+            //
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
             this.ClientSize = new System.Drawing.Size(464, 151);
             this.Controls.Add(this.textBox1);
@@ -114,8 +112,6 @@ namespace FizzyLauncher
         {
             base.OnShown(e);
 
-            this.DialogResult = System.Windows.Forms.DialogResult.None;
-
             textBox1.Focus();
         }
 
diff --git a/Program.cs b/Program.cs
index 2a25f06..54c0a42 100644
--- a/Program.cs
+++ b/Program.cs
@@ -13,8 +13,6 @@ namespace FizzyLauncher
         [STAThread]
         static void Main()
         {
-            UIcon.UIResource = typeof(UIResource);
-
             Application.SetHighDpiMode(HighDpiMode.SystemAware);
             Application.EnableVisualStyles();
             Application.SetCompatibleTextRenderingDefault(false);
diff --git a/References/RyzStudio3.dll b/References/RyzStudio3.dll
index 98ff0cd..9dd315b 100644
Binary files a/References/RyzStudio3.dll and b/References/RyzStudio3.dll differ
diff --git a/UIResource.Designer.cs b/UIResource.Designer.cs
deleted file mode 100644
index b31ddd3..0000000
--- a/UIResource.Designer.cs
+++ /dev/null
@@ -1,93 +0,0 @@
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Runtime Version:4.0.30319.42000
-//
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-namespace BookmarkManager {
-    using System;
-    
-    
-    /// <summary>
-    ///   A strongly-typed resource class, for looking up localized strings, etc.
-    /// </summary>
-    // This class was auto-generated by the StronglyTypedResourceBuilder
-    // class via a tool like ResGen or Visual Studio.
-    // To add or remove a member, edit your .ResX file then rerun ResGen
-    // with the /str option, or rebuild your VS project.
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    public class UIResource {
-        
-        private static global::System.Resources.ResourceManager resourceMan;
-        
-        private static global::System.Globalization.CultureInfo resourceCulture;
-        
-        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
-        internal UIResource() {
-        }
-        
-        /// <summary>
-        ///   Returns the cached ResourceManager instance used by this class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        public static global::System.Resources.ResourceManager ResourceManager {
-            get {
-                if (object.ReferenceEquals(resourceMan, null)) {
-                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("BookmarkManager.UIResource", typeof(UIResource).Assembly);
-                    resourceMan = temp;
-                }
-                return resourceMan;
-            }
-        }
-        
-        /// <summary>
-        ///   Overrides the current thread's CurrentUICulture property for all
-        ///   resource lookups using this strongly typed resource class.
-        /// </summary>
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
-        public static global::System.Globalization.CultureInfo Culture {
-            get {
-                return resourceCulture;
-            }
-            set {
-                resourceCulture = value;
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized resource of type System.Drawing.Bitmap.
-        /// </summary>
-        public static System.Drawing.Bitmap loading_block {
-            get {
-                object obj = ResourceManager.GetObject("loading_block", resourceCulture);
-                return ((System.Drawing.Bitmap)(obj));
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized resource of type System.Drawing.Bitmap.
-        /// </summary>
-        public static System.Drawing.Bitmap search {
-            get {
-                object obj = ResourceManager.GetObject("search", resourceCulture);
-                return ((System.Drawing.Bitmap)(obj));
-            }
-        }
-        
-        /// <summary>
-        ///   Looks up a localized resource of type System.Drawing.Bitmap.
-        /// </summary>
-        public static System.Drawing.Bitmap search_2 {
-            get {
-                object obj = ResourceManager.GetObject("search_2", resourceCulture);
-                return ((System.Drawing.Bitmap)(obj));
-            }
-        }
-    }
-}
diff --git a/UIResource.resx b/UIResource.resx
deleted file mode 100644
index 6cf1146..0000000
--- a/UIResource.resx
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
-  <data name="loading_block" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>Resources\loading-block.gif;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
-  <data name="search" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>Resources\search.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
-  <data name="search_2" type="System.Resources.ResXFileRef, System.Windows.Forms">
-    <value>Resources\search-2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
-  </data>
-</root>
\ No newline at end of file
diff --git a/UpdateIconsForm.cs b/UpdateIconsForm.cs
index 58aae8d..72becc7 100644
--- a/UpdateIconsForm.cs
+++ b/UpdateIconsForm.cs
@@ -37,7 +37,6 @@ namespace FizzyLauncher
         private TButton button2;
 
 
-        protected bool isBusy = false;
         private RyzStudio.Windows.ThemedForms.TProgressBar progressBar1;
         protected bool requestCancellation = false;
 
@@ -69,9 +68,9 @@ namespace FizzyLauncher
             this.progressBar1 = new RyzStudio.Windows.ThemedForms.TProgressBar();
             ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
             this.SuspendLayout();
-            // 
+            //
             // label1
-            // 
+            //
             this.label1.AutoSize = true;
             this.label1.BackColor = System.Drawing.Color.Transparent;
             this.label1.ForeColor = System.Drawing.SystemColors.ControlText;
@@ -83,9 +82,10 @@ namespace FizzyLauncher
             this.label1.TabIndex = 153;
             this.label1.Text = "Find outstanding icons only";
             this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
+            //
             // button1
-            // 
+            //
+            this.button1.AcceptButton = null;
             this.button1.ActiveImage = null;
             this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.button1.BackColor = System.Drawing.Color.Transparent;
@@ -99,10 +99,10 @@ namespace FizzyLauncher
             this.button1.Size = new System.Drawing.Size(128, 32);
             this.button1.TabIndex = 2;
             this.button1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button1_MouseClick);
-            // 
+            //
             // tHorizontalSeparator1
-            // 
-            this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            //
+            this.tHorizontalSeparator1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.tHorizontalSeparator1.AutoScrollMargin = new System.Drawing.Size(0, 0);
             this.tHorizontalSeparator1.AutoScrollMinSize = new System.Drawing.Size(0, 0);
@@ -116,10 +116,10 @@ namespace FizzyLauncher
             this.tHorizontalSeparator1.Size = new System.Drawing.Size(364, 22);
             this.tHorizontalSeparator1.TabIndex = 188;
             this.tHorizontalSeparator1.TabStop = false;
-            // 
+            //
             // tHorizontalSeparator2
-            // 
-            this.tHorizontalSeparator2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            //
+            this.tHorizontalSeparator2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.tHorizontalSeparator2.AutoScrollMargin = new System.Drawing.Size(0, 0);
             this.tHorizontalSeparator2.AutoScrollMinSize = new System.Drawing.Size(0, 0);
@@ -133,9 +133,9 @@ namespace FizzyLauncher
             this.tHorizontalSeparator2.Size = new System.Drawing.Size(364, 22);
             this.tHorizontalSeparator2.TabIndex = 190;
             this.tHorizontalSeparator2.TabStop = false;
-            // 
+            //
             // label2
-            // 
+            //
             this.label2.AutoSize = true;
             this.label2.BackColor = System.Drawing.Color.Transparent;
             this.label2.ForeColor = System.Drawing.SystemColors.ControlText;
@@ -147,9 +147,9 @@ namespace FizzyLauncher
             this.label2.TabIndex = 195;
             this.label2.Text = "Progress";
             this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
-            // 
+            //
             // pictureBox2
-            // 
+            //
             this.pictureBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
             this.pictureBox2.BackColor = System.Drawing.Color.Transparent;
             this.pictureBox2.ErrorImage = null;
@@ -160,9 +160,9 @@ namespace FizzyLauncher
             this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.CenterImage;
             this.pictureBox2.TabIndex = 202;
             this.pictureBox2.TabStop = false;
-            // 
+            //
             // pickerBox1
-            // 
+            //
             this.pickerBox1.AcceptButton = null;
             this.pickerBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.pickerBox1.BackColor = System.Drawing.Color.Transparent;
@@ -170,13 +170,14 @@ namespace FizzyLauncher
             this.pickerBox1.Location = new System.Drawing.Point(285, 21);
             this.pickerBox1.Margin = new System.Windows.Forms.Padding(10, 4, 10, 4);
             this.pickerBox1.Name = "pickerBox1";
-            this.pickerBox1.Padding = new System.Windows.Forms.Padding(10, 6, 7, 5);
+            this.pickerBox1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.pickerBox1.Size = new System.Drawing.Size(84, 35);
             this.pickerBox1.TabIndex = 0;
             this.pickerBox1.Value = true;
-            // 
+            //
             // button2
-            // 
+            //
+            this.button2.AcceptButton = null;
             this.button2.ActiveImage = null;
             this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
             this.button2.BackColor = System.Drawing.Color.Transparent;
@@ -190,23 +191,24 @@ namespace FizzyLauncher
             this.button2.Size = new System.Drawing.Size(128, 32);
             this.button2.TabIndex = 1;
             this.button2.MouseClick += new System.Windows.Forms.MouseEventHandler(this.button2_MouseClick);
-            // 
+            //
             // progressBar1
-            // 
-            this.progressBar1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            //
+            this.progressBar1.AcceptButton = null;
+            this.progressBar1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
             this.progressBar1.BackColor = System.Drawing.Color.Transparent;
             this.progressBar1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point);
             this.progressBar1.Location = new System.Drawing.Point(10, 119);
             this.progressBar1.Margin = new System.Windows.Forms.Padding(10, 6, 10, 6);
             this.progressBar1.Name = "progressBar1";
-            this.progressBar1.Padding = new System.Windows.Forms.Padding(6, 6, 5, 5);
+            this.progressBar1.Padding = new System.Windows.Forms.Padding(4, 4, 3, 3);
             this.progressBar1.Size = new System.Drawing.Size(359, 33);
             this.progressBar1.TabIndex = 206;
             this.progressBar1.TabStop = false;
-            // 
+            //
             // UpdateIconsForm
-            // 
+            //
             this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.ClientSize = new System.Drawing.Size(384, 521);
@@ -236,48 +238,18 @@ namespace FizzyLauncher
             comboBox1_SelectedIndexChanged(null, null);
         }
 
-        protected override void OnShown(EventArgs e)
+
+        protected new bool IsBusy
         {
-            base.OnShown(e);
-
-            this.DialogResult = DialogResult.None;
-        }
-
-        protected override void OnClosing(CancelEventArgs e)
-        {
-            base.OnClosing(e);
-
-            if (IsBusy)
-            {
-                e.Cancel = true;
-            }
-        }
-
-        protected override void OnKeyDown(KeyEventArgs e)
-        {
-            if (e.KeyCode == Keys.Escape)
-            {
-                if (!IsBusy)
-                {
-                    this.Close();
-                }
-            }
-
-            base.OnKeyDown(e);
-        }
-
-
-        protected bool IsBusy
-        {
-            get => isBusy;
+            get => base.IsBusy;
             set
             {
-                isBusy = value;
+                base.IsBusy = value;
 
-                ThreadControl.SetValue(pictureBox2, (isBusy ? UIcon.GetImage("loading_block") : null));
+                UIControl.SetValue(pictureBox2, (this.IsBusy ? UIcon.GetImage("loading_block") : null));
 
-                ThreadControl.SetEnable(pickerBox1, !isBusy);
-                button2.LabelText = (isBusy ? "&Stop" : "&Run");
+                UIControl.SetEnable(pickerBox1, !this.IsBusy);
+                button2.LabelText = (this.IsBusy ? "&Stop" : "&Run");
             }
         }
 
diff --git a/Windows/Forms/BookmarkTreeView.cs b/Windows/Forms/BookmarkTreeView.cs
index f320eaf..9da5035 100644
--- a/Windows/Forms/BookmarkTreeView.cs
+++ b/Windows/Forms/BookmarkTreeView.cs
@@ -259,7 +259,7 @@ namespace RyzStudio.Windows.Forms
                 return;
             }
 
-            if (ThreadControl.IsChild(draggingNode, node))
+            if (UIControl.IsChild(draggingNode, node))
             {
                 return;
             }
@@ -602,7 +602,7 @@ namespace RyzStudio.Windows.Forms
 
             TreeNode tn2 = AddFolderPath(item.TreeviewPath);
 
-            ThreadControl.Add(tn2, tn);
+            UIControl.Add(tn2, tn);
 
             this.HasChanged = true;
 
@@ -621,7 +621,7 @@ namespace RyzStudio.Windows.Forms
             tn.ToolTipText = item.ToString();
 
             //treeNode.Nodes.Add(tn);
-            ThreadControl.Add(treeNode, tn);
+            UIControl.Add(treeNode, tn);
 
             this.HasChanged = true;
 
@@ -632,7 +632,7 @@ namespace RyzStudio.Windows.Forms
         {
             ResetImageList();
 
-            ThreadControl.Clear(this);
+            UIControl.Clear(this);
 
             this.HasChanged = false;
         }
@@ -644,8 +644,8 @@ namespace RyzStudio.Windows.Forms
             var tt1 = this.ImageList;
 
 
-            ThreadControl.Clear(this);
-            ThreadControl.Add(this, this.Nodes, "", name?.Trim(), (int)IconSet.Root, (int)IconSet.Root);
+            UIControl.Clear(this);
+            UIControl.Add(this, this.Nodes, "", name?.Trim(), (int)IconSet.Root, (int)IconSet.Root);
 
             this.HasChanged = true;
         }
@@ -828,7 +828,7 @@ namespace RyzStudio.Windows.Forms
                 return (int)IconSet.Default;
             }
 
-            ThreadControl.Add(this, this.ImageList, iconID, image);
+            UIControl.Add(this, this.ImageList, iconID, image);
 
             return this.ImageList.Images.IndexOfKey(iconID);
         }
@@ -866,7 +866,7 @@ namespace RyzStudio.Windows.Forms
                 {
                     if (!this.Nodes.ContainsKey(item))
                     {
-                        ThreadControl.Add(this, item, DecodePath(item), (int)IconSet.Root, (int)IconSet.Root);
+                        UIControl.Add(this, item, DecodePath(item), (int)IconSet.Root, (int)IconSet.Root);
                     }
 
                     tn = this.Nodes[item];
@@ -875,7 +875,7 @@ namespace RyzStudio.Windows.Forms
                 {
                     if (!tn.Nodes.ContainsKey(item))
                     {
-                        ThreadControl.Add(tn, item, DecodePath(item), (int)IconSet.Folder1, (int)IconSet.Folder2);
+                        UIControl.Add(tn, item, DecodePath(item), (int)IconSet.Folder1, (int)IconSet.Folder2);
                     }
 
                     tn = tn.Nodes[item];
@@ -887,11 +887,11 @@ namespace RyzStudio.Windows.Forms
 
         protected void ResetImageList()
         {
-            ThreadControl.Clear(this, this.ImageList);
-            ThreadControl.Add(this, this.ImageList, Resources.hexagon);
-            ThreadControl.Add(this, this.ImageList, Resources.folder);
-            ThreadControl.Add(this, this.ImageList, Resources.folder_explore);
-            ThreadControl.Add(this, this.ImageList, Resources.file_text);
+            UIControl.Clear(this, this.ImageList);
+            UIControl.Add(this, this.ImageList, Resources.hexagon);
+            UIControl.Add(this, this.ImageList, Resources.folder);
+            UIControl.Add(this, this.ImageList, Resources.folder_explore);
+            UIControl.Add(this, this.ImageList, Resources.file_text);
         }
 
         protected void TraverseBookmarkList(List<BookmarkItem> rs, TreeNode node)
diff --git a/installer-64.iss b/installer-64.iss
index a2448cd..f9b52c6 100644
--- a/installer-64.iss
+++ b/installer-64.iss
@@ -2,7 +2,7 @@
 ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
 
 #define MyAppName "Bookmark Manager"
-#define MyAppVersion "0.4.3.030"
+#define MyAppVersion "0.4.4.026"
 #define MyAppPublisher "Hi, I'm Ray"
 #define MyAppURL "https://www.hiimray.co.uk/software-bookmark-manager"
 #define MyAppExeName "bookmarkmanager.exe"