Разные цвета для активных / неактивных строк заголовка окна Unity?

Ух ты, это так трудно решить! Я искал и видел других людей с похожей проблемой / жалобой на возможность быстро идентифицировать активное окно, например, Выделите окно с фокусом еще больше Но я еще не нашел какого-либо реального решения!

У меня есть 3 монитора, и я «с дефектом цвета» или «слепым оттенком» (на шаг выше «дальтоника»). Я нахожу разницу между активным и неактивным окном настолько незначительной, что не могу сказать, что к чему ,

Добавление тени окна не очень помогает, потому что полноэкранные окна не получают тень. Кроме того, тень довольно тонкая, поэтому это не просто-быстро идентифицировать.

Я привык к MS Windows, где так легко изменить цвет строки заголовка окна и получить очень высокую контрастность. Я сразу вижу, какое окно является активным окном. Я постоянно - а это уже через несколько недель в Ubuntu - испытываю проблемы с выяснением этого с помощью Ubuntu.

Простым решением для меня было бы иметь 2 разных высококонтрастных цвета для строки заголовка окон. Разве это не может быть сделано? Я пытался искать другие темы, но все они, похоже, придерживаются «все окна имеют одинаковую (или мне так кажется) цветную строку заголовка, независимо от того, активны они или нет». Я считаю эту проблему ОЧЕНЬ разочаровывающей. Я также попробовал плагин для неактивного оконного окна, и он ничего не делал и не помог. (Ubuntu 16.04. 3 монитора, контроллер nvidia и их видеодрайвер)

10
задан 4 August 2017 в 23:56

3 ответа

Согласно Документации Ubuntu 16.04 , можно открыть настройки и перейти к универсальному разделу доступа. Все, что необходимо сделать, включают Высокий контраст, и Вы сделаны.

можно найти эту опцию в Настройках> Универсальный Доступ> Видящий> Высокий контраст. При использовании более ранней версии Ubuntu это должно все еще работать.

0
ответ дан 16 November 2019 в 17:56

Вы проверили ответ на этот вопрос ? Создайте или отредактируйте ~/.config/gtk-3.0/gtk.css как:

.titlebar {
    background: #3089FF;
    color:white; 
}

.titlebar:backdrop  {
    background: #777777;
    color:white;
} 

Примечание, что можно выбрать различные цвета к комплекту предпочтения. Затем обновите гнома:

setsid gnome-shell --replace

я просто попробовал его, и это работало на меня. enter image description here

2
ответ дан 23 November 2019 в 04:41

Из готового решения

существует быстрый небольшой прием, нажимающий Высокий звук + F7 , покачивая Вашу мышь, и затем нажмите Щелкают левой кнопкой по мыши, когда окно расположено назад, где Вы хотели это.

недостаток пора вручную перестроить окно к, он - исходные координаты. Лучший метод, включающий сценарий, присвоенный сочетанию клавиш, описан в следующем разделе.

<час>

Показывают активное окно с Сочетанием клавиш

, Это - улучшенный сценарий более чем revealwindow2 зарегистрированные в следующий раздел. Тот сценарий уменьшает и разворачивает окно, которое перенапрягает окна браузера, которые должны переформатировать разметки веб-страницы.

Этот новый сценарий revealwindow3 может быть присвоен сочетанию клавиш так, неважно, где Вы - Вы, знают активное окно:

reveal window3.gif

revealwindow3 сценарий

#!/bin/bash

# NAME: revealwindow3
# CALL: Best method is to call via hotkey.

# DESC: Reveal active window by moving it in circle on screen.
# PARM: Pare 1 override default # pixels for moving
#       For Ask Ubuntu Question:
#       https://askubuntu.com/questions/943147/different-colors-for-active-inactive-unity-window-title-bars

# DATE: November 19, 2019.

# NOTE: Enhancement to revealwindow2 which shrinks and expand sizes of window
#       which taxes browsers, etc. that have to reformat the window. Also cause
#       of epileptic like shock.

# Dependancy
command -v xdotool >/dev/null 2>&1 || { echo >&2 \
        "xdotool package required but it is not installed.  Aborting."; \
        exit 3; }

# Defaults

STEP_PIXELS=25
SLEEP=.025

if [[ "$#" -eq 1 ]] ; then
    [[ "$1" -lt 5 ]] || [[ "$1" -gt 1000 ]] && { \
        echo "STEP_PIXELS must be between 5 and 1000" ; exit 2; }
    STEP_PIXELS="$1"
fi

# Get Window Information
    WinID=$(xdotool getactivewindow)
  WinLeft=$(xwininfo -id "$WinID" | grep 'ute upper-left X:' | cut -d: -f2)
   WinTop=$(xwininfo -id "$WinID" | grep 'ute upper-left Y:' | cut -d: -f2)
#echo "Win Flds: $WinLeft x $WinTop x $WinWidth x $WinHeight"

# Array of steps
StepArr=( R R R R R D D D D L L L L L U U U U U )

CurrLeft=$(( WinLeft - (STEP_PIXELS *2) ))
[[ $CurrLeft -lt 0 ]] && CurrLeft=0
CurrTop=$(( WinTop - (STEP_PIXELS *3) ))
[[ $CurrTop -lt 0 ]] && CurrTop=0

function XdoMove () {
    local i
    i="$1"
    case "$1" in
    R)
        CurrLeft=$(( CurrLeft + STEP_PIXELS )) ;;
    D)
        CurrTop=$(( CurrTop + STEP_PIXELS )) ;;
    L)
        CurrLeft=$(( CurrLeft - STEP_PIXELS ))
        [[ $CurrLeft -lt 0 ]] && CurrLeft=0 ;;
    U)
        CurrTop=$(( CurrTop - STEP_PIXELS ))
        [[ $CurrTop -lt 0 ]] && CurrTop=0 ;;
    esac

    xdotool windowmove "$WinID" "$CurrLeft" "$CurrTop"
    sleep $SLEEP
}

xdotool windowmove "$WinID" "$CurrLeft" "$CurrTop"
for i in "${StepArr[@]}" ; do XdoMove "$i" ; done


# Restore original Window size and position just in case
xdotool windowmove "$WinID" "$WinLeft" "$WinTop"

sleep .1 # Need time for xorg to update itself.

# Compensate for Window refusing to move to top (Y) coordinate specified
   InfoTop=$(xwininfo -id "$WinID" | grep 'ute upper-left Y:' | cut -d: -f2)

if [[ $InfoTop -ne $WinTop ]] ; then
    Adjust=$((InfoTop - WinTop))
    AdjTop=$((WinTop - Adjust))
    xdotool windowmove "$WinID" "$WinLeft" "$AdjTop"
    echo "Top adjusted by: -$Adjust from: $WinTop to: $AdjTop"
fi

удара <час>

сценарий А для выделения активного окна

Этот метод использует сочетание клавиш. Я использовал Ctrl + Высокий звук + W , потому что левый мизинец + левый средний палец + оставленный ползунок является легкой комбинацией. Присвойте сочетание клавиш сценарию reavelwindow2.

revealwindow2.gif

, сценарий уменьшает активное окно на 10 шагах и затем разворачивает его на 5 шагах. Первоначально я записал сценарий с помощью wmctrl, но он не будет работать на меня. Таким образом, я использовал xdotool вместо этого:

#!/bin/bash

# NAME: revealwindow2
# CALL: Best method is to call via hotkey.

# DESC: Shrink and expand size of active window.
#       For Ask Ubuntu Question:
#       https://askubuntu.com/questions/943147/different-colors-for-active-inactive-unity-window-title-bars

# DATE: November 17, 2019. Modified November 18, 2019.

# Dependancy
command -v xdotool >/dev/null 2>&1 || { echo >&2 \
        "xdotool package required but it is not installed.  Aborting."; \
        exit 3; }

# Get Window Information
    WinID=$(xdotool getactivewindow)
  WinLeft=$(xwininfo -id "$WinID" | grep 'ute upper-left X:' | cut -d: -f2)
   WinTop=$(xwininfo -id "$WinID" | grep 'ute upper-left Y:' | cut -d: -f2)
 WinWidth=$(xwininfo -id "$WinID" | grep 'Width:' | cut -d: -f2)
WinHeight=$(xwininfo -id "$WinID" | grep 'Height:' | cut -d: -f2)
#echo "Win Flds: $WinLeft x $WinTop x $WinWidth x $WinHeight"

WidthStep=$(( WinWidth / 10 ))
HeightStep=$(( WinHeight / 10 ))

function XdoResize () {
    local i
    i="$1"
    NewLeft=$(( i * WidthStep/2 + WinLeft ))
    NewTop=$(( i * HeightStep/2 + WinTop ))
    NewWidth=$(( WinWidth - ( i * WidthStep) ))
    NewHeight=$(( WinHeight - ( i * HeightStep) ))

    xdotool windowsize "$WinID" "$NewWidth" "$NewHeight"
    xdotool windowmove "$WinID" "$NewLeft" "$NewTop"
    sleep .012
}

# Shrink window with xdotool
for (( i=1; i<10; i++ )) ; do XdoResize $i ; done

# Expand window with xdotool
for (( i=5; i>0; i-- )) ; do XdoResize $i ; done

# Restore original Window size and position just in case
xdotool windowsize "$WinID" "$WinWidth" "$WinHeight"
xdotool windowmove "$WinID" "$WinLeft" "$WinTop"

sleep .1 # Need time for xorg to update itself.

# Compensate for Window refusing to move to top (Y) coordinate specified
   InfoTop=$(xwininfo -id "$WinID" | grep 'ute upper-left Y:' | cut -d: -f2)

if [[ $InfoTop -ne $WinTop ]] ; then
    Adjust=$((InfoTop - WinTop))
    AdjTop=$((WinTop - Adjust))
    xdotool windowmove "$WinID" "$WinLeft" "$AdjTop"
    echo "Top adjusted by: -$Adjust from: $WinTop to: $AdjTop"
fi

окна Some не позволяют изменять размер. В этом случае Окно просто спустится направо и затем обратно налево. Вы все еще получаете те же визуальные подсказки, который является активным окном, только с различными перемещениями.

0
ответ дан 23 November 2019 в 04:41

Другие вопросы по тегам:

Похожие вопросы: