Странное изменение размеров в пользовательском полноэкранном NSWindow? - PullRequest
1 голос
/ 03 марта 2011

У меня есть настраиваемое подклассное NSWindow, которое превращается в полноэкранное окно без полей с NSBordelessWindowMask. Он отлично работает, и, насколько я вижу, в самом окне нет проблем или чего-то странного.

То, что я пытаюсь выяснить, почему именно подклассифицированный NSView в вышеупомянутом окне перерисовывает в setFrame: запросы странным образом. Вместо того, чтобы просто принимать запросы такими, какие они есть, кажется, что они претерпевают какие-то изменения - например, установка координаты x равной 25 и шириной 800 не устанавливает правый край представления в 825, как можно было бы ожидать , Вместо этого ширина / высота растут вместе с координатами x и y, даже если они сообщают правильные числа, когда их запрашивает [view frame] .size.width с NSLog.

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

Кто-нибудь еще испытывал этот тип поведения?

1 Ответ

0 голосов
/ 08 марта 2011

Не видя код, который вы используете для создания окна / представления, трудно понять, что может быть причиной этого.Тем не менее, если вы нацеливаетесь на Leopard более поздних версий, есть встроенный способ сделать просмотр полноэкранным, что может помочь.Метод enterFullScreenMode:withOptions: на NSView.Если вы хотите, чтобы все окно стало полноэкранным, вы можете вызвать это на contentView окна.Это может не исправить вашу ошибку, но, по крайней мере, должно немного упростить ситуацию.

...