From ecb1dbd33a0eb78178b6cddb8c1fcef97d51204d Mon Sep 17 00:00:00 2001 From: TheUltimateHacker Date: Sat, 28 Mar 2015 15:10:56 -0400 Subject: [PATCH] Gecko Implementation Rest in Pieces, Trident! I've converted the Internet Browser to Gecko, the Firefox Rendering Engine. Virtually no code has been changed (unless you include the other stuff I'm working on like FullScreenLogin.vb) --- ShiftOS/ApplicationEvents.vb | 34 ++++- .../FullScreenLogin Customizer.Designer.vb | 13 ++ ShiftOS/FullScreenLogin Customizer.vb | 28 ++-- ShiftOS/FullScreenLogin.vb | 10 +- ShiftOS/ShiftOS.vbproj | 5 +- ShiftOS/Web Browser.Designer.vb | 122 ++++++++---------- ShiftOS/Web Browser.vb | 10 +- ShiftOS/skins.vb | 2 + 8 files changed, 131 insertions(+), 93 deletions(-) diff --git a/ShiftOS/ApplicationEvents.vb b/ShiftOS/ApplicationEvents.vb index 5f28270..a74cbe7 100644 --- a/ShiftOS/ApplicationEvents.vb +++ b/ShiftOS/ApplicationEvents.vb @@ -1 +1,33 @@ - \ No newline at end of file +Imports Skybound.Gecko +Imports System.IO + +Namespace My + ' The following events are available for MyApplication: + ' + ' Startup: Raised when the application starts, before the startup form is created. + ' Shutdown: Raised after all application forms are closed. This event is not raised if the application terminates abnormally. + ' UnhandledException: Raised if the application encounters an unhandled exception. + ' StartupNextInstance: Raised when launching a single-instance application and the application is already active. + ' NetworkAvailabilityChanged: Raised when the network connection is connected or disconnected. + Partial Friend Class MyApplication + + Protected Overrides Function OnStartup(ByVal eventArgs As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs) As Boolean + + Dim ProfileDirectory As String = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) & "\ShiftOS\xulrunner\DefaultProfile" + + If Not Directory.Exists(ProfileDirectory) Then + Directory.CreateDirectory(ProfileDirectory) + End If + Xpcom.ProfileDirectory = ProfileDirectory + + Dim xrPath As String = System.Reflection.Assembly.GetExecutingAssembly.Location + xrPath = xrPath.Substring(0, xrPath.LastIndexOf("\") + 1) & "\xulrunner" + Xpcom.Initialize(xrPath) + + Return True + End Function + End Class + + +End Namespace + diff --git a/ShiftOS/FullScreenLogin Customizer.Designer.vb b/ShiftOS/FullScreenLogin Customizer.Designer.vb index 61fc66a..be29c88 100644 --- a/ShiftOS/FullScreenLogin Customizer.Designer.vb +++ b/ShiftOS/FullScreenLogin Customizer.Designer.vb @@ -41,6 +41,7 @@ Partial Class FullScreenLoginCustomizer Me.Label7 = New System.Windows.Forms.Label() Me.Label6 = New System.Windows.Forms.Label() Me.Label5 = New System.Windows.Forms.Label() + Me.Button2 = New System.Windows.Forms.Button() CType(Me.userpic, System.ComponentModel.ISupportInitialize).BeginInit() Me.preview.SuspendLayout() Me.pnldefault.SuspendLayout() @@ -177,6 +178,7 @@ Partial Class FullScreenLoginCustomizer 'Titlebar ' Me.Titlebar.BackColor = System.Drawing.Color.Gray + Me.Titlebar.Controls.Add(Me.Button2) Me.Titlebar.Controls.Add(Me.lbtitletext) Me.Titlebar.Dock = System.Windows.Forms.DockStyle.Top Me.Titlebar.ForeColor = System.Drawing.Color.White @@ -246,6 +248,16 @@ Partial Class FullScreenLoginCustomizer Me.Label5.TabIndex = 0 Me.Label5.Text = "User Account Picture" ' + 'Button2 + ' + Me.Button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat + Me.Button2.Location = New System.Drawing.Point(1826, 5) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(75, 23) + Me.Button2.TabIndex = 1 + Me.Button2.Text = "Apply" + Me.Button2.UseVisualStyleBackColor = True + ' 'FullScreenLoginCustomizer ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -287,4 +299,5 @@ Partial Class FullScreenLoginCustomizer Friend WithEvents Label7 As System.Windows.Forms.Label Friend WithEvents Label6 As System.Windows.Forms.Label Friend WithEvents Label5 As System.Windows.Forms.Label + Friend WithEvents Button2 As System.Windows.Forms.Button End Class diff --git a/ShiftOS/FullScreenLogin Customizer.vb b/ShiftOS/FullScreenLogin Customizer.vb index 90e9eff..7cc49db 100644 --- a/ShiftOS/FullScreenLogin Customizer.vb +++ b/ShiftOS/FullScreenLogin Customizer.vb @@ -56,14 +56,11 @@ userpic.BackColor = Color.Transparent userpic.BackgroundImageLayout = Skins.userimagelayout If Not IsNothing(Skins.userimagelocation) Then userpic.Location = Skins.userimagelocation - txtusername.ForeColor = Skins.inputforecolor - txtpassword.ForeColor = Skins.inputforecolor - txtusername.BackColor = Skins.inputbackcolor - txtpassword.BackColor = Skins.inputbackcolor - txtusername.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle) - txtpassword.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle) - loginbtn.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle) - shutdown.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle) + 'buggy + 'txtusername.ForeColor = Skins.inputforecolor + 'txtpassword.ForeColor = Skins.inputforecolor + 'txtusername.BackColor = Skins.inputbackcolor + 'txtpassword.BackColor = Skins.inputbackcolor txtusername.Location = New Point(Skins.userTextboxX, Skins.userTextBoxY) txtpassword.Location = New Point(Skins.passTextBoxX, Skins.passTextBoxY) loginbtn.Location = New Point(Skins.loginbtnX, Skins.loginbtnY) @@ -117,6 +114,9 @@ Skins.inputfont = inputfont Skins.inputfontsize = inputfontsize Skins.inputfontstyle = inputfontstyle + Skins.buttonfont = buttonfont + Skins.buttonfontsize = buttonfontsize + Skins.buttonfontstyle = buttonfontstyle Skins.loginbg = loginbg Skins.loginbglayout = loginbglayout Skins.loginbgcolor = loginbgcolor @@ -143,6 +143,9 @@ inputfont = Skins.inputfont inputfontsize = Skins.inputfontsize inputfontstyle = Skins.inputfontstyle + buttonfont = Skins.buttonfont + buttonfontsize = Skins.buttonfontsize + buttonfontstyle = Skins.buttonfontstyle loginbg = Skins.loginbg loginbgcolor = Skins.loginbgcolor loginbglayout = Skins.loginbglayout @@ -169,10 +172,6 @@ txtpassword.ForeColor = inputforecolor txtusername.BackColor = inputbackcolor txtpassword.BackColor = inputbackcolor - txtusername.Font = New Font(inputfont, inputfontsize, inputfontstyle) - txtpassword.Font = New Font(inputfont, inputfontsize, inputfontstyle) - loginbtn.Font = New Font(buttonfont, buttonfontsize, buttonfontstyle) - shutdown.Font = New Font(buttonfont, buttonfontsize, buttonfontstyle) addRandomCP() End Sub @@ -219,4 +218,9 @@ loginbtnY = loginbtn.Location.Y setNewSkin() End Sub + + Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click + applySettings() + Me.Close() + End Sub End Class \ No newline at end of file diff --git a/ShiftOS/FullScreenLogin.vb b/ShiftOS/FullScreenLogin.vb index af38901..f9deb1b 100644 --- a/ShiftOS/FullScreenLogin.vb +++ b/ShiftOS/FullScreenLogin.vb @@ -7,7 +7,7 @@ End Sub Public Sub setskin() - Me.BackColor = Skins.loginbgcolor + Me.BackColor = Color.Black Me.BackgroundImage = Skins.loginbg Me.BackgroundImageLayout = Skins.loginbglayout userpic.Size = New Size(Skins.userimagesize, Skins.userimagesize) @@ -15,14 +15,6 @@ userpic.BackColor = Color.Transparent userpic.BackgroundImageLayout = Skins.userimagelayout If Not IsNothing(Skins.userimagelocation) Then userpic.Location = Skins.userimagelocation - txtusername.ForeColor = Skins.inputforecolor - txtpassword.ForeColor = Skins.inputforecolor - txtusername.BackColor = Skins.inputbackcolor - txtpassword.BackColor = Skins.inputbackcolor - txtusername.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle) - txtpassword.Font = New Font(Skins.inputfont, Skins.inputfontsize, Skins.inputfontstyle) - loginbtn.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle) - shutdown.Font = New Font(Skins.buttonfont, Skins.buttonfontsize, Skins.buttonfontstyle) txtusername.Location = New Point(Skins.userTextboxX, Skins.userTextBoxY) txtpassword.Location = New Point(Skins.passTextBoxX, Skins.passTextBoxY) loginbtn.Location = New Point(Skins.loginbtnX, Skins.loginbtnY) diff --git a/ShiftOS/ShiftOS.vbproj b/ShiftOS/ShiftOS.vbproj index 53a4a08..841baf7 100644 --- a/ShiftOS/ShiftOS.vbproj +++ b/ShiftOS/ShiftOS.vbproj @@ -35,7 +35,7 @@ full true true - ..\..\ShiftOS 0.0.8 RCs\ + bin\debug\ 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 @@ -88,6 +88,9 @@ ..\..\..\MovableControls\MichaelsMovableControlSuite\MichaelsMovableControlSuite\bin\Debug\MichaelsMovableControlSuite.dll + + ..\..\..\OrcWeb\OrcWeb\OrcWeb\Skybound.Gecko.dll + diff --git a/ShiftOS/Web Browser.Designer.vb b/ShiftOS/Web Browser.Designer.vb index 9d7bfda..0567459 100644 --- a/ShiftOS/Web Browser.Designer.vb +++ b/ShiftOS/Web Browser.Designer.vb @@ -38,10 +38,6 @@ Partial Class Web_Browser Me.pgbottomlcorner = New System.Windows.Forms.Panel() Me.pgcontents = New System.Windows.Forms.Panel() Me.pnlwebtabholder = New System.Windows.Forms.Panel() - Me.webwindowt4 = New System.Windows.Forms.WebBrowser() - Me.webwindowt1 = New System.Windows.Forms.WebBrowser() - Me.webwindowt2 = New System.Windows.Forms.WebBrowser() - Me.webwindowt3 = New System.Windows.Forms.WebBrowser() Me.Panel1 = New System.Windows.Forms.Panel() Me.btnhome = New System.Windows.Forms.Button() Me.txtlocation = New System.Windows.Forms.TextBox() @@ -49,6 +45,7 @@ Partial Class Web_Browser Me.btnback = New System.Windows.Forms.Button() Me.Panel2 = New System.Windows.Forms.Panel() Me.pnloptions = New System.Windows.Forms.Panel() + Me.siteloadprogress = New ShiftOS.ProgressBarEX() Me.pnltab4 = New System.Windows.Forms.Panel() Me.lbltab4 = New System.Windows.Forms.Label() Me.pnltab3 = New System.Windows.Forms.Panel() @@ -60,7 +57,10 @@ Partial Class Web_Browser Me.pgleft = New System.Windows.Forms.Panel() Me.titlebar = New System.Windows.Forms.Panel() Me.pnlicon = New System.Windows.Forms.PictureBox() - Me.siteloadprogress = New ShiftOS.ProgressBarEX() + Me.webwindowt1 = New Skybound.Gecko.GeckoWebBrowser() + Me.webwindowt2 = New Skybound.Gecko.GeckoWebBrowser() + Me.webwindowt3 = New Skybound.Gecko.GeckoWebBrowser() + Me.webwindowt4 = New Skybound.Gecko.GeckoWebBrowser() Me.pgright.SuspendLayout() Me.pgcontents.SuspendLayout() Me.pnlwebtabholder.SuspendLayout() @@ -192,51 +192,15 @@ Partial Class Web_Browser 'pnlwebtabholder ' Me.pnlwebtabholder.Controls.Add(Me.webwindowt4) - Me.pnlwebtabholder.Controls.Add(Me.webwindowt1) - Me.pnlwebtabholder.Controls.Add(Me.webwindowt2) Me.pnlwebtabholder.Controls.Add(Me.webwindowt3) + Me.pnlwebtabholder.Controls.Add(Me.webwindowt2) + Me.pnlwebtabholder.Controls.Add(Me.webwindowt1) Me.pnlwebtabholder.Dock = System.Windows.Forms.DockStyle.Fill Me.pnlwebtabholder.Location = New System.Drawing.Point(0, 36) Me.pnlwebtabholder.Name = "pnlwebtabholder" Me.pnlwebtabholder.Size = New System.Drawing.Size(1054, 487) Me.pnlwebtabholder.TabIndex = 6 ' - 'webwindowt4 - ' - Me.webwindowt4.Location = New System.Drawing.Point(88, 69) - Me.webwindowt4.MinimumSize = New System.Drawing.Size(20, 20) - Me.webwindowt4.Name = "webwindowt4" - Me.webwindowt4.ScriptErrorsSuppressed = True - Me.webwindowt4.Size = New System.Drawing.Size(62, 48) - Me.webwindowt4.TabIndex = 4 - ' - 'webwindowt1 - ' - Me.webwindowt1.Location = New System.Drawing.Point(261, 69) - Me.webwindowt1.MinimumSize = New System.Drawing.Size(20, 20) - Me.webwindowt1.Name = "webwindowt1" - Me.webwindowt1.ScriptErrorsSuppressed = True - Me.webwindowt1.Size = New System.Drawing.Size(60, 66) - Me.webwindowt1.TabIndex = 1 - ' - 'webwindowt2 - ' - Me.webwindowt2.Location = New System.Drawing.Point(287, 203) - Me.webwindowt2.MinimumSize = New System.Drawing.Size(20, 20) - Me.webwindowt2.Name = "webwindowt2" - Me.webwindowt2.ScriptErrorsSuppressed = True - Me.webwindowt2.Size = New System.Drawing.Size(102, 50) - Me.webwindowt2.TabIndex = 2 - ' - 'webwindowt3 - ' - Me.webwindowt3.Location = New System.Drawing.Point(364, 59) - Me.webwindowt3.MinimumSize = New System.Drawing.Size(20, 20) - Me.webwindowt3.Name = "webwindowt3" - Me.webwindowt3.ScriptErrorsSuppressed = True - Me.webwindowt3.Size = New System.Drawing.Size(111, 58) - Me.webwindowt3.TabIndex = 3 - ' 'Panel1 ' Me.Panel1.Controls.Add(Me.btnhome) @@ -323,6 +287,26 @@ Partial Class Web_Browser Me.pnloptions.Size = New System.Drawing.Size(1054, 45) Me.pnloptions.TabIndex = 5 ' + 'siteloadprogress + ' + Me.siteloadprogress.BackColor = System.Drawing.Color.White + Me.siteloadprogress.BlockSeparation = 3 + Me.siteloadprogress.BlockWidth = 5 + Me.siteloadprogress.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle + Me.siteloadprogress.Color = System.Drawing.Color.Gray + Me.siteloadprogress.Dock = System.Windows.Forms.DockStyle.Top + Me.siteloadprogress.Location = New System.Drawing.Point(0, 0) + Me.siteloadprogress.MaxValue = 100 + Me.siteloadprogress.MinValue = 0 + Me.siteloadprogress.Name = "siteloadprogress" + Me.siteloadprogress.Orientation = ShiftOS.ProgressBarEX.ProgressBarOrientation.Horizontal + Me.siteloadprogress.ShowValue = False + Me.siteloadprogress.Size = New System.Drawing.Size(1054, 10) + Me.siteloadprogress.Step = 10 + Me.siteloadprogress.Style = ShiftOS.ProgressBarEX.ProgressBarExStyle.Continuous + Me.siteloadprogress.TabIndex = 20 + Me.siteloadprogress.Value = 0 + ' 'pnltab4 ' Me.pnltab4.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles) @@ -443,25 +427,33 @@ Partial Class Web_Browser Me.pnlicon.TabStop = False Me.pnlicon.Visible = False ' - 'siteloadprogress + 'webwindowt1 ' - Me.siteloadprogress.BackColor = System.Drawing.Color.White - Me.siteloadprogress.BlockSeparation = 3 - Me.siteloadprogress.BlockWidth = 5 - Me.siteloadprogress.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle - Me.siteloadprogress.Color = System.Drawing.Color.Gray - Me.siteloadprogress.Dock = System.Windows.Forms.DockStyle.Top - Me.siteloadprogress.Location = New System.Drawing.Point(0, 0) - Me.siteloadprogress.MaxValue = 100 - Me.siteloadprogress.MinValue = 0 - Me.siteloadprogress.Name = "siteloadprogress" - Me.siteloadprogress.Orientation = ShiftOS.ProgressBarEX.ProgressBarOrientation.Horizontal - Me.siteloadprogress.ShowValue = False - Me.siteloadprogress.Size = New System.Drawing.Size(1054, 10) - Me.siteloadprogress.Step = 10 - Me.siteloadprogress.Style = ShiftOS.ProgressBarEX.ProgressBarExStyle.Continuous - Me.siteloadprogress.TabIndex = 20 - Me.siteloadprogress.Value = 0 + Me.webwindowt1.Location = New System.Drawing.Point(100, 62) + Me.webwindowt1.Name = "webwindowt1" + Me.webwindowt1.Size = New System.Drawing.Size(135, 84) + Me.webwindowt1.TabIndex = 0 + ' + 'webwindowt2 + ' + Me.webwindowt2.Location = New System.Drawing.Point(352, 122) + Me.webwindowt2.Name = "webwindowt2" + Me.webwindowt2.Size = New System.Drawing.Size(75, 23) + Me.webwindowt2.TabIndex = 1 + ' + 'webwindowt3 + ' + Me.webwindowt3.Location = New System.Drawing.Point(476, 122) + Me.webwindowt3.Name = "webwindowt3" + Me.webwindowt3.Size = New System.Drawing.Size(75, 23) + Me.webwindowt3.TabIndex = 2 + ' + 'webwindowt4 + ' + Me.webwindowt4.Location = New System.Drawing.Point(218, 175) + Me.webwindowt4.Name = "webwindowt4" + Me.webwindowt4.Size = New System.Drawing.Size(75, 23) + Me.webwindowt4.TabIndex = 3 ' 'Web_Browser ' @@ -517,15 +509,11 @@ Partial Class Web_Browser Friend WithEvents pgleft As System.Windows.Forms.Panel Friend WithEvents titlebar As System.Windows.Forms.Panel Friend WithEvents Panel1 As System.Windows.Forms.Panel - Friend WithEvents webwindowt1 As System.Windows.Forms.WebBrowser Friend WithEvents btnhome As System.Windows.Forms.Button Friend WithEvents txtlocation As System.Windows.Forms.TextBox Friend WithEvents btnforward As System.Windows.Forms.Button Friend WithEvents btnback As System.Windows.Forms.Button Friend WithEvents Panel2 As System.Windows.Forms.Panel - Friend WithEvents webwindowt2 As System.Windows.Forms.WebBrowser - Friend WithEvents webwindowt4 As System.Windows.Forms.WebBrowser - Friend WithEvents webwindowt3 As System.Windows.Forms.WebBrowser Friend WithEvents pnloptions As System.Windows.Forms.Panel Friend WithEvents pnltab4 As System.Windows.Forms.Panel Friend WithEvents lbltab4 As System.Windows.Forms.Label @@ -537,4 +525,8 @@ Partial Class Web_Browser Friend WithEvents lbltab1 As System.Windows.Forms.Label Friend WithEvents pnlwebtabholder As System.Windows.Forms.Panel Friend WithEvents siteloadprogress As ShiftOS.ProgressBarEX + Friend WithEvents webwindowt4 As Skybound.Gecko.GeckoWebBrowser + Friend WithEvents webwindowt3 As Skybound.Gecko.GeckoWebBrowser + Friend WithEvents webwindowt2 As Skybound.Gecko.GeckoWebBrowser + Friend WithEvents webwindowt1 As Skybound.Gecko.GeckoWebBrowser End Class diff --git a/ShiftOS/Web Browser.vb b/ShiftOS/Web Browser.vb index 7f1eea8..6d163e7 100644 --- a/ShiftOS/Web Browser.vb +++ b/ShiftOS/Web Browser.vb @@ -448,19 +448,19 @@ End If End Sub - Private Sub webwindowt1_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) Handles webwindowt1.Navigated + Private Sub webwindowt1_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) updatetitles() txtlocation.Text = webwindowt1.Url.ToString End Sub - Private Sub webwindowt2_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) Handles webwindowt2.Navigated + Private Sub webwindowt2_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) updatetitles() txtlocation.Text = webwindowt1.Url.ToString End Sub - Private Sub webwindowt3_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) Handles webwindowt3.Navigated + Private Sub webwindowt3_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) updatetitles() txtlocation.Text = webwindowt1.Url.ToString End Sub - Private Sub webwindowt4_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) Handles webwindowt4.Navigated + Private Sub webwindowt4_Navigated(sender As Object, e As WebBrowserNavigatedEventArgs) updatetitles() txtlocation.Text = webwindowt1.Url.ToString End Sub @@ -632,7 +632,7 @@ If webwindowt4.DocumentTitle = "" Then lbtitletext.Text = "Web Browser" Else lbtitletext.Text = "Web Browser - " & webwindowt4.DocumentTitle End Sub - Private Sub webloading(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserProgressChangedEventArgs) Handles webwindowt1.ProgressChanged, webwindowt2.ProgressChanged, webwindowt3.ProgressChanged, webwindowt4.ProgressChanged + Private Sub webloading(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserProgressChangedEventArgs) Try If e.MaximumProgress > 0L AndAlso e.CurrentProgress > 0L Then siteloadprogress.Value = CInt(Math.Round((100 * e.CurrentProgress / e.MaximumProgress))) diff --git a/ShiftOS/skins.vb b/ShiftOS/skins.vb index d38e80d..867541b 100644 --- a/ShiftOS/skins.vb +++ b/ShiftOS/skins.vb @@ -350,6 +350,8 @@ Module Skins Next ' settings + + closebtnsize = New Size(loaddata(1), loaddata(2)) rollbtnsize = New Size(loaddata(3), loaddata(4)) minbtnsize = New Size(loaddata(5), loaddata(6))