SourceChord

C#とXAML好きなプログラマの備忘録。最近はWPF系の話題が中心です。

FluentWPF 0.3.2をリリースしました

ここの所、色々立て込んでいて、ぜんぜんこの辺のライブラリをメンテできず、気づけばissueやプルリクをため込んでしまってました。
で、やっと少し対応する余裕ができたので、いただいたプルリクをマージしてFluentWPF0.3.2をリリースしました。

続きを読む

Windows10 April 2018 Updateに更新してみました

配信が始まっていたので、さっそく更新してみました。

今回も、特に何もせずすぐにWindowsUpdateで通知されてたので、そのまま更新しました。 もしかしたら、以前に更新アシスタントなどを使ってアップデートした環境には早めに配信とかしてるのかな。。

続きを読む

Electron+TypeScriptなプロジェクトの雛形を更新~Electron2.0.0+TypeScript2.8.3~

以前作ったElectron+TypeScriptのサンプルコードを、それぞれの最新バージョンにアップデートしました。

それぞれ、以下のバージョンに更新しました。

  • electron v2.0.0
  • typescript v2.8.3

今回もコードには変更を加えず、ライブラリ類のバージョン更新だけしてます。

ちなみに、electronがv2.0.0とメジャーバージョンが上がっています。
electron v2以降ではバージョニングのルールを変更し、今後はのアップデート時にはSemantic Versioningに沿ってバージョン番号を付けていくとのことです。 https://electronjs.org/blog/electron-2-semantic-boogaloo

ChromiumやNode.jsのメジャーバージョン更新でelectronのメジャーバージョンも上げていくとのことなので、今後はelectronのバージョンもChromeみたいに頻繁に上がっていくことになりそうですね。

FluentWPF 0.3.0をリリースしました

0.2系のリリースからはだいぶ時間がかかりましたが、色々とまとまった機能追加ができたので、FluentWPF0.3.0としてリリースしました。

今回の変更内容は以下のようなものです。

  • osのテーマ・アクセントカラー設定への対応
  • ResourceDictionaryExクラス
    • OSのLight/Darkテーマ設定に応じてリソース切替を行う仕組みの導入

f:id:minami_SC:20180403010336g:plain

続きを読む

任意のウィンドウをアクリル化するツールを作ろうとして挫折

ちょっと思い付きで、Windows10向けに任意のWindowをアクリル化するツールを作ろうとしてました。

こんな感じ。
f:id:minami_SC:20180323000452g:plain

Spy++とかのツールみたいに、対象ウィンドウへとドロップ操作を行うと、そのウィンドウをアクリル化します。
ウィンドウハンドルを取得して、そのウィンドウに対してSetWindowCompositionAttribute関数呼べば、イイ感じにできないかな、、、と思い試してみました。

続きを読む

VirtualShortcutKey 1.1.0リリース

VirtualShortcutKey 1.1.0をリリースしました。 github.com ダウンロードページ

今回の更新は、Win7/8.xへの対応が主な変更点です。

変更内容

  • Windows 7/8.x系OSへの対応
    以前のバージョンでは、Windows7/8.x系OSでUI表示が乱れる不具合がありましたが、この表示の乱れを修正しています。

  • ウィンドウのアクリル効果の微修正
    わずかにですがFluentDesignのアクリル風エフェクト効果を修正しました。
    半透明のアクリル効果を加えたウィンドウでは、ウィンドウに若干のノイズを加えてざらつき感をだしています。
    今回のバージョンでは、このノイズをほんっっの少しだけ弱めて、滑らかな表示にしました。

1.0.0 1.1.0
f:id:minami_SC:20180228012224p:plain f:id:minami_SC:20180228012234p:plain

FluentWPF 0.2.2をリリースしました

2件ほどプルリクをいただいたので、マージしてFluentWPF0.2.2としてリリースしました。

Release v0.2.2 · sourcechord/FluentWPF · GitHub

Nugetからは以下のコマンドでインストールできます。

Install-Package FluentWPF

https://www.nuget.org/packages/FluentWPF/

変更内容

今回の変更内容は以下の2点です。
(どちらもプルリクでいただいた内容です。)

  • AcrylicWindow.ShowTitleBar="False"のときに、タイトルバー部分の余白ができる
  • ウィンドウ作成後に、AcrylicWindow.Enabled添付プロパティをTrueにしても、ウィンドウがアクリル化されない不具合を修正

AcrylicWindow.ShowTitleBar="False"としたときに、以下のようにタイトルバーがあった部分に無駄な余白ができてしまっていました。
f:id:minami_SC:20180221231918p:plain

<fw:AcrylicWindow x:Class="FluentWPFSample.Views.AcrylicWindow"
                  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                  xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
                  xmlns:fw="clr-namespace:SourceChord.FluentWPF;assembly=FluentWPF"
                  xmlns:local="clr-namespace:FluentWPFSample.Views"
                  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
                  Title="AcrylicWindow"
                  Width="300"
                  Height="300"
                  ShowTitleBar="False"
                  mc:Ignorable="d">
    <Grid Background="#70FFFFFF">
        <TextBlock Margin="10"
                   HorizontalAlignment="Left"
                   VerticalAlignment="Top"
                   Text="この部分がコンテンツ領域"
                   TextWrapping="Wrap" />
    </Grid>
</fw:AcrylicWindow>

今回のバージョンアップで、こんな風にちゃんとウィンドウ全域が描画領域になります。
f:id:minami_SC:20180221231929p:plain

今後の予定

現在、OSのアクセントカラーやLight/Darkのテーマ設定を反映できるように対応を進めています。
f:id:minami_SC:20180221233148g:plain

この辺、ある程度動作するコードは書けてるんだけど、クラス名とかXAMLからのプロパティ定義をどんな仕様にするか、まだ少し悩んでいます。

もう少し時間がかかりそうですが、こんな対応を進めてこうと思ってます。
とりあえず、今月中にはテーマ対応をして次バージョンをリリースしたいなぁ。