レンダリング枠の一時非表示No.11254
western さん 23/04/24 09:18
 
LSPクライアントとして、補完候補や各種ヒント情報を表示する目的で
レンダリング枠を複数使う、LSP接続時に前もって起動しておく
という使い方をしているのですが、

レンダリング枠を一時的に隠したい場合
(起動時の事前ロードや、補完やヒントが終わった後)に

・cy を 0px 指定する
・画面上に表示されない位置(はるか右 or はるか下に) に移動させる

のいずれが、最も実装に優しい処理となりますでしょうか?
(文脈的には hide: 1 や show: -1 があると自然ですが)

show:0 を使うとインスタンス破棄、という動作になっているようで
再度使う際に改めてのロードとなるのは避けたいので、
現状は期待する動作となった "cy":"0px" を採用しています

あと元々そういう使い方を意図していなかったのでは、と推測されますが
browserpanecommand で何かする場合には
{ show:1 } の記述は必須というルールでしょうか

[ ]
RE:11254 レンダリング枠の一時非表示No.11259
秀丸担当 さん 23/04/24 11:10
 
レンダリング枠もブラウザ枠も、非表示にしたらインスタンスも消えますが、レンダ
リング枠なら残す方法があってもいいと思います。
0pxとするのはサイズ変更の何かが働いてあまり優しくないかもしれないので、単純
に非表示にできたらいいです。
何らかの方法を検討します。

>browserpanecommand で何かする場合には
>{ show:1 } の記述は必須というルールでしょうか

renderpanecommandではなくbrowserpanecommandのことでしょうか?
まだ表示されていない段階からマクロのみで表示するには、{show:1}だったり、show
browserpane 1;だったりをする必要があります。
すでに表示されている場合はする必要は無いです。

[ ]
RE:11259 レンダリング枠の一時非表示No.11261
western さん 23/04/24 11:25
 
> renderpanecommandではなくbrowserpanecommandのことでしょうか?

間違えていました すみません。
renderpanecommand での話となります

> すでに表示されている場合はする必要は無いです。

overlay指定で既に表示中のレンダリング枠の位置やサイズを変更したい時に

renderpanecommand """{"target":"testWindow","x":"300px"}""";

だけでは動作せず { "show":1, } を付けた

renderpanecommand """{"target":"testWindow","show":1,"x":"300px"}""";

であれば、期待通り動作するという挙動の話となります

[ ]
RE:11261 レンダリング枠の一時非表示No.11262
秀丸担当 さん 23/04/24 16:05
 
renderpanecommandのことでしたか。
xだけを変えるような場合、即反映はされていませんでした。
showを一緒にしたらできましたが、ウィンドウ自体のサイズ変更をしても反映されま
した。
xだけを変えるような場合でもすぐ反映されるようにしたほうがいいです。
そのように修正します。

[ ]