@@ -16,29 +16,32 @@ public sealed partial class MainWindow : Window
16
16
private static TdClient _client = App . _client ;
17
17
private static TdApi . User _user ;
18
18
private static TdApi . ChatFolderInfo [ ] _folders = App . _folders ;
19
- private NotificationService _notificationService = new ( ) ;
20
19
21
- private int _totalUnreadCount = 0 ;
20
+ private int _totalUnreadCount ;
22
21
23
22
public MainWindow ( )
24
23
{
25
24
InitializeComponent ( ) ;
25
+
26
26
#if DEBUG
27
27
{
28
- Title = "sakuragram preview" ;
29
- TitleBar . Subtitle = "preview" ;
30
- Icon . ShowAsMonochrome = true ;
28
+ Title = "sakuragram debug" ;
29
+ TitleBar . Subtitle = "debug" ;
30
+ }
31
+ #elif BETA
32
+ {
33
+ Title = "sakuragram beta" ;
34
+ TitleBar . Subtitle = "beta" ;
31
35
}
32
- #else
36
+ #elif RELEASE
33
37
{
34
- Title = "sakuragram" ;
35
- Icon . ShowAsMonochrome = false ;
38
+ Icon . Title = "sakuragram" ;
36
39
}
37
40
#endif
38
41
39
42
ExtendsContentIntoTitleBar = true ;
40
43
NavigationView . SelectedItem = NavigationView . MenuItems [ 0 ] ;
41
- NavigateToView ( "ChatsView" ) ;
44
+ NavigateToView ( "ChatsView" , null ) ;
42
45
TrySetDesktopAcrylicBackdrop ( ) ;
43
46
44
47
var chatsIds = _client . ExecuteAsync ( new TdApi . GetChats { Limit = 100 } ) . Result . ChatIds ;
@@ -58,7 +61,8 @@ public MainWindow()
58
61
var folder = new NavigationViewItem
59
62
{
60
63
Content = chatFolderInfo . Title ,
61
- Tag = "ChatsView"
64
+ Tag = "ChatsView" ,
65
+ Name = $ "{ chatFolderInfo . Title } _{ chatFolderInfo . Id } "
62
66
} ;
63
67
NavigationView . MenuItems . Add ( folder ) ;
64
68
}
@@ -126,11 +130,11 @@ private void NavView_ItemInvoked(NavigationView sender, NavigationViewItemInvoke
126
130
127
131
var clickedView = item . Tag . ToString ( ) ;
128
132
129
- if ( ! NavigateToView ( clickedView ) ) return ;
133
+ if ( ! NavigateToView ( clickedView , item ) ) return ;
130
134
_lastItem = item ;
131
135
}
132
136
133
- private bool NavigateToView ( string clickedView )
137
+ private bool NavigateToView ( string clickedView , NavigationViewItem item )
134
138
{
135
139
var view = Assembly . GetExecutingAssembly ( ) . GetType ( $ "sakuragram.Views.{ clickedView } ") ;
136
140
@@ -139,6 +143,27 @@ private bool NavigateToView(string clickedView)
139
143
140
144
ContentFrame . Navigate ( view , null , new EntranceNavigationTransitionInfo ( ) ) ;
141
145
146
+ if ( clickedView == "ChatsView" && item != null )
147
+ {
148
+ foreach ( var folder in _folders )
149
+ {
150
+ if ( item . Name == $ "{ folder . Title } _{ folder . Id } ")
151
+ {
152
+ App . _folderId = folder . Id ;
153
+ break ;
154
+ }
155
+ else if ( item . Name == "NavViewChats" )
156
+ {
157
+ App . _folderId = - 1 ;
158
+ break ;
159
+ }
160
+ else
161
+ {
162
+ continue ;
163
+ }
164
+ }
165
+ }
166
+
142
167
NavigationView . PaneDisplayMode = clickedView switch
143
168
{
144
169
"SettingsView" => NavigationViewPaneDisplayMode . LeftCompact ,
0 commit comments