Skip to content

Commit 970678d

Browse files
committed
Fix cussor issue
1 parent 7db21c9 commit 970678d

File tree

15 files changed

+184
-35
lines changed

15 files changed

+184
-35
lines changed

Important.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Git remote:
2+
"origin": github.com
3+
"gitee": gitee.com

NoteWidgetAddIn/Markdown/Extension/ColorSchemeExtension.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@ public void Render(HtmlTemplate template)
2727
else if (ColorScheme == ColorScheme.Dark)
2828
{
2929
githubCssFileName = "github-markdown-dark.css";
30-
schemeStyleVar = "body{--color-previewwindow-default: #202020;}.notewidget-footer{--color-fg-default:#c9d1d9;--color-canvas-default:#202020;}::-webkit-scrollbar { width: 10px; height: 10px;}::-webkit-scrollbar-button { background-color: #666; }::-webkit-scrollbar-track { background-color: #202020;}::-webkit-scrollbar-track-piece { background-color: #000;}::-webkit-scrollbar-thumb { height: 50px; background-color: #666; border-radius: 3px;}::-webkit-scrollbar-corner { background-color: #202020;}::-webkit-resizer { background-color: #666;}";
30+
schemeStyleVar = "body{--color-previewwindow-default: #101010;}.markdown-body code {color: #d63384;font-size: .875em;}.notewidget-footer{--color-fg-default:#c9d1d9;--color-canvas-default:#202020;}::-webkit-scrollbar { width: 10px; height: 10px;}::-webkit-scrollbar-button { background-color: #666; }::-webkit-scrollbar-track { background-color: #202020;}::-webkit-scrollbar-track-piece { background-color: #000;}::-webkit-scrollbar-thumb { height: 50px; background-color: #666; border-radius: 3px;}::-webkit-scrollbar-corner { background-color: #202020;}::-webkit-resizer { background-color: #666;}";
3131
}
3232
else //Use System Settings
3333
{
3434
githubCssFileName = "github-markdown.min.css";
35-
schemeStyleVar = "@media (prefers-color-scheme: dark) {body{--color-previewwindow-default: #202020;}.notewidget-footer{--color-fg-default:#c9d1d9;--color-canvas-default:#0d1117;}::-webkit-scrollbar { width: 10px; height: 10px;}::-webkit-scrollbar-button { background-color: #666; }::-webkit-scrollbar-track { background-color: #202020;}::-webkit-scrollbar-track-piece { background-color: #000;}::-webkit-scrollbar-thumb { height: 50px; background-color: #666; border-radius: 3px;}::-webkit-scrollbar-corner { background-color: #202020;}::-webkit-resizer { background-color: #666;}}@media(prefers-color-scheme: light){body{--color-previewwindow-default: #ffffff;}.notewidget-footer{--color-fg-default:#24292f;--color-canvas-default:#ffffff}}";
35+
schemeStyleVar = "@media (prefers-color-scheme: dark) {body{--color-previewwindow-default: #202020;}.markdown-body code {color: #d63384;font-size: .875em;}.notewidget-footer{--color-fg-default:#c9d1d9;--color-canvas-default:#0d1117;}::-webkit-scrollbar { width: 10px; height: 10px;}::-webkit-scrollbar-button { background-color: #666; }::-webkit-scrollbar-track { background-color: #202020;}::-webkit-scrollbar-track-piece { background-color: #000;}::-webkit-scrollbar-thumb { height: 50px; background-color: #666; border-radius: 3px;}::-webkit-scrollbar-corner { background-color: #202020;}::-webkit-resizer { background-color: #666;}}@media(prefers-color-scheme: light){body{--color-previewwindow-default: #ffffff;}.notewidget-footer{--color-fg-default:#24292f;--color-canvas-default:#ffffff}}";
3636
}
37-
string schemeStyle = "<style>" + schemeStyleVar + "html,body{margin:0;flex-direction: column;background-color: var(--color-previewwindow-default) !important;height:100%;}#___markdown-content___ {padding: 10px !important;min-width:600px;}.notewidget-footer{bottom: 0px;width: 100%;text-align:center;color: var(--color-fg-default);background-color: var(--color-canvas-default);font-family: -apple-system,BlinkMacSystemFont,\"Segoe UI\",Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\";font-size: 16px;line-height: 1.5;}</style>";
37+
string schemeStyle = "<style>" + schemeStyleVar + "html,body{margin:0;flex-direction: column;background-color: var(--color-previewwindow-default) !important;height:100%;}.notewidget-footer{bottom: 0px;width: 100%;text-align:center;color: var(--color-fg-default);background-color: var(--color-canvas-default);font-family: -apple-system,BlinkMacSystemFont,\"Segoe UI\",Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\";font-size: 16px;line-height: 1.5;}</style>";
3838

3939
string gitHubCssUrl;
4040
if (ResourceType == TemplateResourceType.Local)

NoteWidgetAddIn/Markdown/HtmlTemplate.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,18 @@ static HtmlTemplate()
2222
<meta http-equiv=""X-UA-Compatible"" content=""IE=Edge"" />
2323
<meta charset=""utf-8"" />
2424
{{HeadContent}}
25+
<style>.widget-container{min-width:1000px;}#___markdown-content___ {min-width:400px;max-width:900px;margin: 0 auto; padding:20px;}</style>
2526
<title>{{Title}}</title>
2627
</head>
2728
<body>
28-
<div id=""___markdown-content___"" class=""markdown-body"">";
29+
<div class=""widget-container"">
30+
<div id=""___markdown-content___"" class=""markdown-body""><article>";
2931
private const string HTML_FOOT = @"
30-
</div>
32+
</article></div>
3133
<footer class=""notewidget-footer"">
3234
<p>{{footer}}</p>
3335
</footer>
36+
</div>
3437
{{FootContent}}
3538
</body>
3639
</html>

NoteWidgetAddIn/Model/NotePage.cs

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -159,44 +159,41 @@ private void AppendElementsInnerText(StringBuilder appender, XElement container)
159159
{
160160
if (item.Name.LocalName == "Outline")
161161
{
162-
foreach (var oe in item.Elements(Namespace + "OEChildren").Elements(Namespace + "OE"))
163-
{
164-
AppendElementsInnerText(appender, oe);
165-
}
162+
AppendElementsInnerText(appender, item.Element(Namespace + "OEChildren"));
166163
}
167164
else if (item.Name.LocalName == "Image")
168165
{
169166
var ni = new NoteImage(item);
170167
//TODO: Large image (more than 2MB) should be saved to file, not embedded in html content.
171168
appender.AppendLine($"![]({ni.ToBase64Image()})");
172169
}
173-
else if (item.Name.LocalName == "T")
174-
{
175-
var tr = new NoteTextRange(item);
176-
appender.AppendLine(tr.InnerText);
177-
}
178170
else if (item.Name.LocalName == "Table" && item.Attribute("hasHeaderRow")?.Value == "false")
179171
{
180172
foreach(var oe in item.Descendants(Namespace + "OE"))
181173
{
182-
AppendElementsInnerText(appender, oe);
183-
}
184-
}
185-
else if (item.Name.LocalName == "OEChildren")
186-
{
187-
foreach (var oe in item.Elements(Namespace + "OE"))
188-
{
189-
if (oe.Elements(Namespace + "T").Count() > 0)
174+
if (item.Elements(Namespace + "T").Count() > 0)
190175
{
191-
var tr = new NoteTextRange(new XElement(Namespace + "T", new XCData(oe.Value)));
176+
var tr = new NoteTextRange(new XElement(Namespace + "T", new XCData(item.Value)));
192177
appender.AppendLine(tr.InnerText);
193178
}
194179
else
195180
{
196-
AppendElementsInnerText(appender, oe);
181+
AppendElementsInnerText(appender, item);
197182
}
198183
}
199184
}
185+
else if (item.Name.LocalName == "OE")
186+
{
187+
if (item.Elements(Namespace + "T").Count() > 0)
188+
{
189+
var tr = new NoteTextRange(new XElement(Namespace + "T", new XCData(item.Value)));
190+
appender.AppendLine(tr.InnerText);
191+
}
192+
else
193+
{
194+
AppendElementsInnerText(appender, item);
195+
}
196+
}
200197

201198
}
202199
}

NoteWidgetAddIn/Properties/Settings.Designer.cs

Lines changed: 24 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

NoteWidgetAddIn/Properties/Settings.settings

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version='1.0' encoding='utf-8'?>
2-
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="NoteWidget.AddIn.Properties" GeneratedClassName="Settings">
2+
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="NoteWidgetAddIn.Properties" GeneratedClassName="Settings">
33
<Profiles />
44
<Settings>
55
<Setting Name="Markdown_ColorScheme" Type="System.String" Scope="User">
@@ -23,5 +23,11 @@
2323
<Setting Name="Markdown_CheatSheet_Height" Type="System.Double" Scope="User">
2424
<Value Profile="(Default)">1000</Value>
2525
</Setting>
26+
<Setting Name="Markdown_Preview_Left" Type="System.Double" Scope="User">
27+
<Value Profile="(Default)">0</Value>
28+
</Setting>
29+
<Setting Name="Markdown_Preview_Top" Type="System.Double" Scope="User">
30+
<Value Profile="(Default)">10</Value>
31+
</Setting>
2632
</Settings>
2733
</SettingsFile>

NoteWidgetAddIn/app.config

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,40 @@
22
<configuration>
33
<configSections>
44
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
5+
<section name="NoteWidgetAddIn.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
56
<section name="NoteWidget.AddIn.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
67
</sectionGroup>
78
</configSections>
89
<userSettings>
10+
<NoteWidgetAddIn.Properties.Settings>
11+
<setting name="Markdown_ColorScheme" serializeAs="String">
12+
<value>System</value>
13+
</setting>
14+
<setting name="Markdown_HighlightTheme" serializeAs="String">
15+
<value>Default</value>
16+
</setting>
17+
<setting name="Markdown_Preview_Width" serializeAs="String">
18+
<value>1200</value>
19+
</setting>
20+
<setting name="Markdown_Preview_Height" serializeAs="String">
21+
<value>1000</value>
22+
</setting>
23+
<setting name="Markdown_Preview_Singleton" serializeAs="String">
24+
<value>True</value>
25+
</setting>
26+
<setting name="Markdown_CheatSheet_Width" serializeAs="String">
27+
<value>1500</value>
28+
</setting>
29+
<setting name="Markdown_CheatSheet_Height" serializeAs="String">
30+
<value>1000</value>
31+
</setting>
32+
<setting name="Markdown_Preview_Left" serializeAs="String">
33+
<value>0</value>
34+
</setting>
35+
<setting name="Markdown_Preview_Top" serializeAs="String">
36+
<value>10</value>
37+
</setting>
38+
</NoteWidgetAddIn.Properties.Settings>
939
<NoteWidget.AddIn.Properties.Settings>
1040
<setting name="Markdown_ColorScheme" serializeAs="String">
1141
<value>System</value>
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<one:Page xmlns:one="http://schemas.microsoft.com/office/onenote/2013/onenote" ID="{63DEAA34-59B6-4241-8D4D-DDE122531ABA}{1}{E1957636351534941033821993164913069263156761}" name="Diagram" dateTime="2022-01-19T14:35:06.000Z" lastModifiedTime="2022-01-20T05:43:55.000Z" pageLevel="1" isCurrentlyViewed="true" selected="partial" lang="en-US">
2+
<one:QuickStyleDef index="0" name="PageTitle" fontColor="automatic" highlightColor="automatic" font="Microsoft YaHei UI" fontSize="20.0" spaceBefore="0.0" spaceAfter="0.0" />
3+
<one:QuickStyleDef index="1" name="p" fontColor="automatic" highlightColor="automatic" font="Microsoft YaHei UI" fontSize="12.0" spaceBefore="0.0" spaceAfter="0.0" />
4+
<one:PageSettings RTL="false" color="automatic">
5+
<one:PageSize>
6+
<one:Automatic />
7+
</one:PageSize>
8+
<one:RuleLines visible="false" />
9+
</one:PageSettings>
10+
<one:Title lang="en-US">
11+
<one:OE author="efrey kong" authorInitials="EK" lastModifiedBy="efrey kong" lastModifiedByInitials="EK" creationTime="2022-01-19T14:35:07.000Z" lastModifiedTime="2022-01-19T14:35:09.000Z" objectID="{5E565245-3EBA-46A3-8145-326508E77C77}{15}{B0}" alignment="left" quickStyleIndex="0" style="font-family:Calibri;font-size:20.0pt">
12+
<one:T><![CDATA[Diagram]]></one:T>
13+
</one:OE>
14+
</one:Title>
15+
<one:Outline selected="partial" author="efrey kong" authorInitials="EK" lastModifiedBy="efrey kong" lastModifiedByInitials="EK" lastModifiedTime="2022-01-20T05:43:55.000Z" objectID="{2E610147-F123-4FE7-AFC6-E74AA12ACFE8}{61}{B0}">
16+
<one:Position x="36.0" y="86.4000015258789" z="0" />
17+
<one:Size width="244.4419555664062" height="293.8119812011719" />
18+
<one:OEChildren selected="partial">
19+
<one:OE creationTime="2022-01-19T15:47:53.000Z" lastModifiedTime="2022-01-19T15:47:53.000Z" objectID="{8B9C63D8-7B85-47C3-BC3A-FC37AF064787}{34}{B0}" alignment="left" quickStyleIndex="1" selected="partial" style="font-family:Calibri;font-size:12.0pt;color:#1B1B2E" lang="zh-CN">
20+
<one:T><![CDATA[<span
21+
style='background:#F8F8F8'> A[Square Rect] -- L</span>]]></one:T>
22+
<one:T selected="all"><![CDATA[]]></one:T>
23+
<one:T><![CDATA[<span
24+
style='background:#F8F8F8'>ink text --&gt; B((Circle))</span>]]></one:T>
25+
</one:OE>
26+
</one:OEChildren>
27+
</one:Outline>
28+
</one:Page>

NoteWidgetTests/MarkdownTest.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,5 +54,21 @@ public void TestTemplateToHtml()
5454
}
5555
Assert.IsTrue(System.IO.File.Exists(filePath));
5656
}
57+
[TestMethod]
58+
public async Task TestWebView2()
59+
{
60+
var browser = new WebBrowserWindow();
61+
browser.BrowserHtmlContent = "<html><head></head><body><div id=\"content\"><span>Hello world!</span></div></body></html>";
62+
browser.webBrowser.NavigationCompleted += async delegate {
63+
var result = await browser.webBrowser.ExecuteScriptAsync("document.getElementById('content').innerHTML;");
64+
Console.WriteLine(result);
65+
await browser.webBrowser.ExecuteScriptAsync("document.getElementById('content').outerHTML = '<span>I am changed</span>';");
66+
};
67+
68+
browser.Show();
69+
var app = new System.Windows.Application();
70+
app.MainWindow = browser;
71+
app.Run();
72+
}
5773
}
5874
}

NoteWidgetTests/NoteWidgetTests.csproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858

5959
<ItemGroup>
6060
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.11.0" />
61+
<PackageReference Include="Microsoft.Web.WebView2" Version="1.0.1072.54" />
6162
<PackageReference Include="MSTest.TestAdapter" Version="2.2.7" />
6263
<PackageReference Include="MSTest.TestFramework" Version="2.2.7" />
6364
<PackageReference Include="coverlet.collector" Version="3.1.0" />
@@ -84,6 +85,9 @@
8485
<None Update="DummyData\PageHierarchy.xml">
8586
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
8687
</None>
88+
<None Update="DummyData\PageWithCursor.xml">
89+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
90+
</None>
8791
<None Update="DummyData\SectionGroupHierarchy.xml">
8892
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
8993
</None>

0 commit comments

Comments
 (0)