Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
a0cb992
ui: support native dark theme control
pdjdev Aug 14, 2026
d535af5
Merge pull request #27 from pdjdev/ui/dark-support
pdjdev Aug 19, 2026
32a6723
refactor: integrate table cellcontrol timer
pdjdev Aug 19, 2026
1d40cbe
refactor: update CellControl and rendering logic for improved clarity…
pdjdev Aug 19, 2026
635282f
refactor: adjust rendering properties and update resource files for i…
pdjdev Aug 19, 2026
41b07ec
ui: add end time backdrop drawing logic for enhanced visual clarity
pdjdev Aug 19, 2026
c0a9412
ui: animate timetable cell expansion
pdjdev Aug 19, 2026
93ccd2b
refactor: replace Panel with CompositedTablePanel for improved render…
pdjdev Aug 19, 2026
e25caeb
ui: rollback ViewCourse title rendering method to single line
pdjdev Aug 19, 2026
3cc0c26
setting: add ExpandAnimation option
pdjdev Aug 19, 2026
5e1df83
Merge pull request #28 from pdjdev/refactor/rendering
pdjdev Aug 19, 2026
3eb2fb3
refactor: enhance expansion logic in CellControl for improved hover b…
pdjdev Aug 19, 2026
0bd3999
ui: add color mode support for MemoTB in ViewCourse
pdjdev Aug 19, 2026
e885b54
ui: enhance text color transition logic in CellControl
pdjdev Aug 19, 2026
04239ba
ui: implement checkbox fade effect in CellControl rendering
pdjdev Aug 19, 2026
f303719
ui: update ToolStripComboBox colors for better dark mode support
pdjdev Aug 19, 2026
1676de1
fix: prevent endless cell fade rendering and reduce idle CPU usage
pdjdev Aug 19, 2026
1d0b839
Merge pull request #29 from pdjdev/refactor/rendering
pdjdev Aug 19, 2026
5811292
refactor: consolidate CellControl settings into CellControlSettings c…
pdjdev Aug 20, 2026
31bdf70
refactor: add & move model classes for course and feed entries
pdjdev Aug 20, 2026
a0293fd
fix: prevent premature execution of settings updates in OptionForm an…
pdjdev Aug 20, 2026
b8a8784
feat: add HoverEnded event to CellControl and handle hover state in T…
pdjdev Aug 20, 2026
93c0478
refactor: improve XML serialization in SerializeTableFragment function
pdjdev Aug 20, 2026
89f5945
refactor: unify timetable data handling with typed models
pdjdev Aug 20, 2026
512d169
Merge pull request #30 from pdjdev/refactor/schedule-data-handling
pdjdev Aug 20, 2026
9ce2222
feat: add hover state reconciliation and manage course details form l…
pdjdev Aug 20, 2026
1262d94
feat: allow empty professor value in coursedata
pdjdev Aug 20, 2026
ddaa9a3
version: update version to 1.10.0.0
pdjdev Aug 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions uTablePackage/Package.appxmanifest
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="uap uap3 desktop rescap">
<Identity Name="49490PBJSoftware.uTable" Publisher="CN=998C84B6-4B4D-482F-B102-3947ACC42DA7" Version="1.9.1.0" ProcessorArchitecture="neutral" />
<Identity Name="49490PBJSoftware.uTable" Publisher="CN=998C84B6-4B4D-482F-B102-3947ACC42DA7" Version="1.10.0.0" ProcessorArchitecture="neutral" />
<Properties>
<DisplayName>uTable</DisplayName>
<PublisherDisplayName>PBJSoftware</PublisherDisplayName>
Expand Down
44 changes: 23 additions & 21 deletions utable/Forms/EveryTimeBrowserNew.Designer.vb

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

38 changes: 17 additions & 21 deletions utable/Forms/EveryTimeBrowserNew.vb
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,12 @@ Public Class EveryTimeBrowserNew
WebView21.Source = New Uri(targetUrl)
trialCount = 0

Refresh()
' 호스트 OS의 컬러 테마가 다크 -> 브라우저 내부도 다크이므로 검은 TopPanel 배경 설정
If IsWindowsDarkMode() Then
TopPanel.BackColor = ColorTranslator.FromHtml("#111111")
CloseBT.Image = My.Resources.closeicon_w
Label1.ForeColor = ThemeColors.Dark.Text
End If
End Sub

Private Sub WebView2_NavigationCompleted(sender As Object, e As CoreWebView2NavigationCompletedEventArgs) Handles WebView21.NavigationCompleted
Expand Down Expand Up @@ -116,7 +121,7 @@ Public Class EveryTimeBrowserNew
Private Async Sub TableChecker_Tick(sender As Object, e As EventArgs) Handles TableChecker.Tick

Dim courses As List(Of EverytimeCourse) = Await GetCoursesFromPage()
Dim tabledata As String = ""
Dim schedule As New TableSchedule With {.Name = "에타에서 불러온 시간표"}

If courses.Count > 0 Then

Expand All @@ -130,23 +135,23 @@ Public Class EveryTimeBrowserNew
color = ControlPaint.Dark(color, 0.2)
End If

tabledata += "<course>" + vbCrLf
tabledata += vbTab + "<day>" + course.Day.ToString + "</day>" + vbCrLf
tabledata += vbTab + "<name>" + xmlEncode(course.Name) + "</name>" + vbCrLf
tabledata += vbTab + "<prof>" + xmlEncode(course.Professor) + "</prof>" + vbCrLf
tabledata += vbTab + "<memo>" + xmlEncode(course.Memo) + "</memo>" + vbCrLf
tabledata += vbTab + "<start>" + course.Start.ToString + "</start>" + vbCrLf
tabledata += vbTab + "<end>" + (course.Start + course.Duration).ToString + "</end>" + vbCrLf
tabledata += vbTab + "<color>" + ColorTranslator.ToHtml(color) + "</color>" + vbCrLf
tabledata += "</course>" + vbCrLf
schedule.Courses.Add(New TableCourse With {
.Day = course.Day,
.Name = course.Name,
.Professor = course.Professor,
.Memo = course.Memo,
.Start = course.Start,
.End = course.Start + course.Duration,
.Color = ColorTranslator.ToHtml(color)
})
Next

Await Task.Delay(3000)
WebView21.Source = New Uri("https://everytime.kr/user/logout")

If MsgBox("불러오기가 완료되었습니다. 바로 적용하시겠습니까?" + vbCr + "기존 시간표는 지워집니다!",
vbQuestion + vbYesNo) = vbYes Then
writeTable("<tablename>에타에서 불러온 시간표</tablename>" + vbCrLf + tabledata)
SaveSchedule(schedule)
TableForm.updateCell()
Close()
End If
Expand Down Expand Up @@ -222,12 +227,3 @@ Public Class EveryTimeBrowserNew
Process.Start("https://utable.sw.pbj.kr/everytime-troubleshooting")
End Sub
End Class
Public Class EverytimeCourse
Public Property Day As Integer
Public Property Name As String
Public Property Professor As String
Public Property Memo As String
Public Property Start As Integer
Public Property Duration As Integer
Public Property ColorNumber As Integer
End Class
24 changes: 24 additions & 0 deletions utable/Forms/EverytimeSemesterSelector.vb
Original file line number Diff line number Diff line change
Expand Up @@ -96,8 +96,32 @@ Public Class EverytimeSemesterSelector
Select Case colorMode
Case "Dark"
CloseBT.Image = My.Resources.closeicon_w

' 옵션 컨트롤 내에 있는 모든 체크박스, 라디오버튼에 다크 모드 테마 적용
For Each chk As CheckBox In GetAll(Me, GetType(CheckBox))
SetWindowTheme(chk.Handle, "DarkMode_Explorer", Nothing)
Next

For Each rdo As RadioButton In GetAll(Me, GetType(RadioButton))
SetWindowTheme(rdo.Handle, "DarkMode_Explorer", Nothing)
Next

SetWindowTheme(AgreementRTB.Handle, "DarkMode_Explorer", Nothing)
AgreementRTB.BackColor = Color.FromArgb(30, 30, 30)

Case Else
CloseBT.Image = My.Resources.closeicon_b

' 옵션 컨트롤 내에 있는 모든 체크박스, 라디오버튼에 다크 모드 테마 적용
For Each chk As CheckBox In GetAll(Me, GetType(CheckBox))
SetWindowTheme(chk.Handle, "Explorer", Nothing)
Next

For Each rdo As RadioButton In GetAll(Me, GetType(RadioButton))
SetWindowTheme(rdo.Handle, "Explorer", Nothing)
Next

SetWindowTheme(AgreementRTB.Handle, "Explorer", Nothing)
End Select
End Sub

Expand Down
Loading
Loading