* Update to WinUI 2.6
Co-authored-by: Han Zhang <zhangh@microsoft.com>
Co-authored-by: Kenny Guo <kennyguo@microsoft.com>
**Description of the changes:**
1. Update to WinUI 2.6 styles and controls #1606.
2. Add Mica Material #1611.
3. Add Settings page #596.
4. Fix Ctrl+E shortcuts in AoT mode #1590.
**How changes were validated:**
Passed build, UT/UI test and manually tested.
* Fixed the display issue in AOT mode (#1615)
* Fixed the display issue in AOT mode
* Get the OpenPaneLength from the resource
* Fix CalendarView style in DateCalculation of dark mode (#1616)
* Fix a style problem of Date Calculator, and clean some unused codes
* Remove some unused codes
* Disable Mica before close the window to resolve a crash (#1619)
* Bump internal package build number (#1621)
* Fixed contrast between background and foreground colors in the equation button. Fixed the issue where the text in the equation text box is white when the background is white
* Adjust the foreground color algorithm
* moved the contrast method to utils so that it is resuable
* Moved brushes for the GetContrastColor method to the app.xaml resource dictionary
* Removed the change for the edit box colors, so it can be in a different PR
* Added dark them to graph control, started dark theme for the controls on the graph
* Dark theme for graphing mode updated to use event model, diagnostics added, cleaned up code that wasn't needed
* Updated prepare-release-internalonly.yaml internal package version
* Updated Theme Settings properties, removed version change, other small changes from PR feedback>
* Updated the localSettings check and updated the GraphTheme event to send bool instead of string
* Updated the equation line color to change with the graph theme
* Rebased onto master and issues created during the rebase
* Updates per code review feedback
* Update settings properties to just have IsMatchAppTheme property and updated the high contrast settings for the graph control
* Match version to current in master
* Updated per PR feedback
* Fix resetting the m_lastLineColorIndex to only happen when reassignColors is true
* Changed second if to else if in the OnPropertyChanged method
* fixed control button and equation line colors
* Equation Control - High contrast
* tweak
* Update graph colors when users switch from one high contrast mode to another
* decrease opacity of reveal borders
* move variable editor
* support high contrast and tab navigation
* Remove obsolete resources
* take feedback into account
* Fix focus when virtualization recycle a EquationTextBox
* formatting
* init
* Replace the Add equation button by an EquationTextBox
* Move automatically the focus to the next textbox when users press Enter
* nit
* localize the placeholder
* rebase
* rebased and disable remove context menu when the equation is the last one
* replace storyboards by setters in visual states
* Add context menu to rich edit to allow for keyboard support
* Update src/Calculator/Controls/EquationTextBox.cpp
Co-Authored-By: Pepe Rivera <joseartrivera@gmail.com>
* Check for focus before triggering submit
* Added enable/disable line functionality
* Update EquationTextBox to change the opacity of functions have are not visible. Update the function label for the EquationTextBox to increment the label to show f1, f2, f3, etc
* rebase key-graph-features and fix issue where removing an equation box and adding a new one repopulates the previous equation
* Added visibility icon for the equation button hover
* updated EquationButton to be a toggle button to better handle the LineHidden state and other PR comment fixes.
* Updated EquationButton style to use a toggle button and to have placeholder icons for the show/hide states
* Updated equation button after pulling the refactor work into the branch. Fixed the Equation Button in KGF UI
* Fixed Pepe's bugs
* Uncomment temporary.pfx in calculator.vcxproj
* Added IGraphAnalyzer
* Key Graph Features called and getting returned to the client. To do put all strings into the Equation object
* Updated UpdateKeyGraphFeatures to add function analysis data to all properties in Equation object
* Update KGF when variables are updated
* Key graph features ui started
* Added MathRichEditBox and started hooking up key graph features to the UI
* Updated EquationViewModel to include parity and periodicity
* Updated key graph features to update the EquationViewModel
* updated key graph features to display more values
* Key graph features populating uing MathRichEdit mode
* moved KeyGraphFeatures control to GraphingCalculator.xaml
* Use MathML formatting instead of MathRichEdit for strings passed back from the engine
* cleaned up project targeting and equation.h comments
* Updated equation edit box to populate for KeyGraphFeatures
* Fixed vcxproj files to have the correct targeting and certificates. KGF Title strings moved to x:Uid instead of the code behind
* Updated per PR feedback
* Update MathRichEditBox to detect if the string is a mathml string and use the appropriate set method to set the text
* fixed the issue where parity, periodicity and monotonicity could be set with an old value if the next one is empty
* KGF control UI adjustments and error handling
* Error control updates
* Error handling added when analysis fails
* fixed alignment on rich edit boxes
* Add monotonicity direction into the mathml string and only have 1 richeditbox
* Set hover state on KGF EquationEditBox to change button opacity and fixed spacing in Monotonicity RichEditBox
* remove sideload package certificate info VS added
* updated logic for setting error strings to be in the viewmodel
* Updated KeyGraphFeatures to populate dynamically using a ListView and TemplateSelector
* Update periodicity to not show if it isn't supported
* Fixed issue where y-intercept was using the x-intercept value
* Remove ItemsControl ItemsContainerStyle
* Updated per pr feedback. Fixed bug where analysis error would not reset
* Update MathRichEdit box to remove selection when focus is lost
* Updated mathrichedit to get LAF access for Dev, Release and Graphing projects
* Remove OnLostFocus in MathRichEdit, Change KGF ItemsControl back to ListView
* Clean up styles for KGF and ensure the match the comps
* Moved formatoptions logic to the Grapher constructor and reverted LineColor.Text resource that was mistakenly taken out
* Add copyright header to KGF Files
* fixed issue where asymptote values were not populating
* Disable KGF button when there is no equation. Fixed issue where equation populated in a new equationtextbox after the previous one was deleted
* Removed formatoptions testing lines used for debugging
- Merge the 3 CalculationResultStyle(S|M|L) in App.xaml
- Only modify CalculationResult::*FontSize in Calculator.xaml instead of fully updating the style of the control.
- Create a new property MaxFontSize in order to be able to update it without being forced to fully update the Style (because m_startingFontSize was set in OnApplyTemplate)
- Modify how DisplayMargin is managed to prevent the textblock Margin to shift when we update its value (without fully updating the Style).
Add Reveal Highlight effect on the 4 basic operator buttons + Equal button (effect more visible with purple and all grey-ish accent colors). Also fixes a high contrast issue when the operator buttons were pressed.
If we allow users to select texts, the application will feel more like a "Desktop app", will be easier to use on a tablet and users will be more prompt to use Ctrl+C to use the result in another app.