17.04サスペンドから再開した後、表示スケーリングが1に戻りますか?


9

最近、Nvidia 750TiカードとDell 4Kモニターを搭載したマシンに17.04のクリーンインストールを実行しました。Nvidiaバイナリドライバー381.09を使用しています。

サスペンド後にマシンが再開すると、Ubuntuスクリーンディスプレイ設定で設定したディスプレイスケーリングが常に1に戻るという点を除けば、これはすべてうまくいきます。私はそれを1.5に設定する必要があります。そうでなければすべてが小さくなります(ところで、Ubuntuはなぜ4Kモニターで適切なデフォルトにスケーリングしないのですか?)

他の誰かがこれを手に入れますか?他のどこにもそれについての言及はありません。

ところで、私はNouveauドライバーを試しましたが、サスペンド後に画面がまったく目覚めません。したがって、そのルートはスターターではありません。


編集:確認済みのバグとしてここに報告されているようです何かが起こるかどうかを監視します。


インテル統合gfxを使用していますが、同じバグに気づきました。
Greg Dan

誰かが回避策を知っていますか?これは非常に迷惑なバグです。このバグは、HiDPI画面を使用するすべての17.04ユーザーに影響するようです。
グレッグダン

バグは修正されないようです。Unityは17.10から削除されます。そして16.04と16.10にはこのバグはありません。
Greg Dan

悲しいかな、17.10は私のシステムでもこれを実行します。さらに悪いことに、100%のジャンプでのみスケーリングを変更できるので、小規模または大規模で生活する必要があります。UbuntuはHDPI画面を正しく一貫して処理できないようで、リリースごとに悪化しています。現在、少なくとも部分スケーリングを処理する16.04.3にダウングレードしました。
TommyPeanuts 2017年

回答:


3

このバグにイライラしている人のために、scale_factor値の変更を監視し、スクリプトが最初に実行されたときの値にリセットする簡単なperlスクリプトを次に示します。

#!/ usr / bin / perl -w
厳格な使用;

私の$ dconf_line = `dconf read / com / ubuntu / user-interface / scale-factor`;
my($ scale_factor)= $ dconf_line =〜m / DP1 \ ':(\ d +)/;

if($ scale_factor){
    print STDOUT "scale_factorの現在の値:$ scale_factor ... \ n \ n";
} そうしないと {
    die "エラー:dconfでscale_factor値が見つかりません\ n(/ com / ubuntu / user-interface / scale-factorの値は$ dconf_lineでした\ n \ n";
}

open(my $ fh、 "-|"、 "dconf watch / com / ubuntu / user-interface / scale-factor");

while(<$ fh>){
    if(m / DP1 \ ':(?!$ scale_factor)/){
        `dconf write / com / ubuntu / user-interface / scale-factor" {'DP1':$ scale_factor} "`;
        私の$ date = `date`;
        STDOUT "$ date-調整されたスケーリング係数\ n \ n";
    }
}

スクリプトを実行したままにしておくだけで、値から離れようとする変更の試みをキャッチしてリセットします。

17.04ではUnityで動作しますが、17.10でgnomeに切り替えると、値が別のdconfレジストリキーに格納される可能性があります。その場合は、スクリプト内のキーの場所のすべてのインスタンスを適切なものに置き換え、それはうまくいくはずです。

お役に立てれば ...


非常に便利。以下のために16.04 LTS(Nvidiaのカード付き)、私はから16、ライン5を変更しなければならなかった、と17 DP1DP-2...
david6

現在、適切な修正が適用されたPPAがあります
Elliott Slaughter
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.