-
-
Notifications
You must be signed in to change notification settings - Fork 482
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enabled settings syncing accross all windowss #452
Conversation
@Jasonstein all the settings except sessionsnapshot are synced, let me know if you want to change anything. |
Thanks for the PR. I was hesitated on implementing any background task for Notepads because background task are not guaranteed to work in all circumstances. It might fail to start or even disabled in battery saver mode. And it might also be disabled by user manually like I literally disabled background tasks for some of my daily used UWP apps. If that happens, settings will not be able to work at all right? That's also why I did no implement background task for checking file status and instead I do it in main process. |
Tried with disabling background apps and turning on battery saver mode, it works as expected. |
Is this task launched and getting killed as part of the main process? Or it runs indefinitely? |
The task runs in a separate process, it stays alive as long as the app is running. |
I still think this is overkill for a small benefit. We are making it complicated for settings and now we will have another process running. I think we should hold off until we find another use case of it to justify the cost and maintainability out of it. Sorry for saying so because this is a huge amount of work that you did. Let's keep this PR alive so we can reuse them in the future if needed. |
Not being able to access settings in shadow window is a real inconvenience for me, also implementing appservice will also be helpful implementing desktop extension. Do you still want to implement desktop extension or have you decided against that?? |
I originally wanted to use desktop extension but slowly I found it is not necessary especially when Windows 10X was announced. The main bottleneck we have is something like the performance of the WinRT RichEdit and also the lack of large file support. Other things are not so important. I also wanted to keep Notepads as minimum as possible not just in terms of design but also the amount of code. So it is easier for me to maintain and do drastic changes in the future. On the other hands, the majority of the users never changed anything in settings and settings are not so important to their daily usage of the app. As well for multi instances, let me show you the usage stats: For the past 90days, only 1% of the usage goes for shadow window (non-first instance). That is the count of window, the real user base can only be lower. |
I have added desktop extension to allow user to modify system files directly. You can check it out here. I personally use it so I don't have to look at "MS Notepad" when I modify system files like hosts file. Also cases are considered for Windows 10X where desktop extension is not available, so the app won't fail there. I completely understand if you don't want to implement it since most users likely will never use it.
For those of us that use Windows' virtual desktop feature shadow window is a must. Again if you implement this I think this would increase the user base. |
Feel free to send out PR and I can take a look. I am hesitate on using background service to sync settings but I do want to leverage desktop extension to enable editing on host files etc or use it to inject commands to Registry so we can leverage right click context menu in shell. |
I have submitted #523 , the background process is a must for communicating between desktop extension and uwp. Syncing settings is just an added benifit. |
If that's the case, you can combine them in one PR. Btw, do you know if Windows 10X will support desktop extension? I will probably not going to spent too much time on this PR until the XBox game bar extension is released since there are some packaging issues that I need to resolve. |
Will do that.
Probably not, but I have made changes in code so that it checks if desktop extension api is available otherwise it works normally as before
Let me know when you decide to merge it. |
Settings is now synced for all app instances.
PR Type
What kind of change does this PR introduce?
Feature