Я пытаюсь заставить терминал Гэка правильно работать в Unity. Его окно имеет ширину, равную ширине экрана. Но из-за того, что правая граница левой границы окна Unity становится невидимой. Итак, я хочу установить правильную ширину окна. Он должен быть меньше фактического размера окна. И код должен работать корректно с Unity или без него.Как получить размер экрана, исключая боковую панель Unity в GDK
Это как Guake определяет положение и размер его окна:
def get_final_window_rect(self):
"""Gets the final size of the main window of guake. The height
is the window_height property, width is window_width and the
horizontal alignment is given by window_alignment.
"""
screen = self.window.get_screen()
height = self.client.get_int(KEY('/general/window_height'))
width = 100
halignment = self.client.get_int(KEY('/general/window_halignment'))
# get the rectangle just from the first/default monitor in the
# future we might create a field to select which monitor you
# wanna use
window_rect = screen.get_monitor_geometry(0)
total_width = window_rect.width
window_rect.height = window_rect.height * height/100
window_rect.width = window_rect.width * width/100
if width < total_width:
if halignment == ALIGN_CENTER:
window_rect.x = (total_width - window_rect.width)/2
elif halignment == ALIGN_LEFT:
window_rect.x = 0
elif halignment == ALIGN_RIGHT:
window_rect.x = total_width - window_rect.width
window_rect.y = 0
window_rect.width = 250
return window_rect
Ширина пускового устройства больше, чем значение 'icon_size'. Теперь у меня ширина пусковой установки = 50 и icon_size = 32. –