Более близкий Аэроснимок в человечности

Прежде чем я буду кричаться на для дублирования вопроса. Я считал окна, которые подобное 7 поспешное окно максимизирует и вертикальная функция и http://www.omgubuntu.co.uk/2009/11/get-aero-snap-in-ubuntu/

Существует две проблемы с этим решением, которое я пытаюсь обойти.

  1. Это не чувствительно к перетаскиванию окна
  2. Это не интеллектуально для мониторов Двойного представления.

Первой проблемой является более нажимающее. У меня есть compiz настройки с wmctrl, но это не чувствительно к перетаскиванию окон, если я имею окно с фокусом и помещаю мою мышь в панель, я максимизировал окно, даже при том, что я не перетаскиваю окно. Хорошее решение было бы чувствительно к состоянию мыши, по которой щелкнутой, щелкают правой кнопкой, щелкнутый средней кнопкой. Идеальное решение было бы чувствительно к перетаскиванию окна или нет.

Второй незначительное раздражение мне, по крайней мере. С командами, поскольку они перечислены, эквивалентны максимизации окон, так как у меня есть установка мониторов Twinview.

Там какой-либо путь состоит в том, чтобы добавить эту чувствительность к командам?

4
задан 13 April 2017 в 15:23

3 ответа

Я хотел, чтобы эта функция была на моем Ubuntu, когда я переключился с windows7. Я использую компонент сетки в Compiz, отображаемый на цифровой клавиатуре, это действительно эффективно, и я знаю, что предпочитаю этот способ организации окон на моем рабочем столе.

0
ответ дан 13 April 2017 в 15:23

После того, как я немного поигрался с вещами, у него появилось решение, которое работает с мышами, следуя совету из этого поста .

Я создал два сценария, один для стыковки слева и один для стыковки справа.

dockleft:

#! /usr/bin/env bash
WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x' `
HALF=$(($WIDTH/2))
QUARTER=$(($WIDTH/4)) 
winid=`xdpyinfo | grep focus | grep -E -o 0x[0-9a-f]+`
x=`xwininfo -id $winid | grep "Absolute upper-left X" | cut -f 2 -d ':'`
y=`xwininfo -id $winid | grep "Absolute upper-left Y" | cut -f 2 -d ':'`

if [ $x -lt $HALF ]; then
  wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,0,0,$QUARTER,-1
else
  wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,$HALF,0,$QUARTER,-1
fi

dockright:

#! /usr/bin/env bash
WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x' `
HALF=$(($WIDTH/2))
QUARTER=$(($WIDTH/4)) 
THREEQUARTERS=$(($WIDTH*3/4))
winid=`xdpyinfo | grep focus | grep -E -o 0x[0-9a-f]+`
x=`xwininfo -id $winid | grep "Absolute upper-left X" | cut -f 2 -d ':'`
y=`xwininfo -id $winid | grep "Absolute upper-left Y" | cut -f 2 -d ':'`

if [ $x -lt $HALF ]; then
  wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,$QUARTER,0,$QUARTER,-1
else
  wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,$THREEQUARTERS,0,$QUARTER,-1
fi

Затем я использовал easystroke, чтобы назначить жесты мыши для дока слева, дока правильно и максимально. Это не совсем эмулирует версию Windows, но, по крайней мере, я не буду максимизировать свои окна автоматически. Таким образом, я также могу назначить сценарии для горячих клавиш для дополнительного удобства.

ПРИМЕЧАНИЕ: Это для моей двойной настройки монитора Twinview, которая учитывает, что я хочу, чтобы окно было прикреплено на боковой панели монитора, а не «рабочий стол», который выглядит как Ubuntu как очень 113 Широкий одиночный монитор.

Это, вероятно, будет достаточно для меня, но если есть лучшее решение, я бы очень хотел его услышать.

0
ответ дан 13 April 2017 в 15:23

Эндрю, я вижу, ты уже ответил альтернативой EasyStroke, но я приведу МОЙ способ сделать это здесь, просто для регистрации альтернативы.

На самом деле я придерживался оригинальной альтернативы Compiz, но вместо этого изменил сценарии, чтобы они работали немедленно с перетаскиванием окна, а не ожидая отпускания кнопки. Я думаю, это вопрос личного вкуса, но, как и вы, я также предпочитаю способ Win7 максимизировать касание краев.

Для левого и правого сценария я только что прокомментировал цикл, который ожидает отпускания кнопки:

#while (/usr/bin/X11/xinput --query-state $MOUSE | grep down)
#do 
#   echo 'button pressed'
#done

и ничего более. Ну, я также добавил для них сочетания клавиш, но это всего лишь бонус Compiz. ;-) Поздравляю с таким хорошим вопросом.

П.С .: Мое редактирование относится к версии с обнаружением щелчка мыши, доступной на http://ubuntuforums.org/showpost.php?p=9207510&postcount=60 .

0
ответ дан 13 April 2017 в 15:23

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

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