blenderapplication window position and size (r60028 vs. r59934) #36702

Closed
opened 2013-09-11 11:18:56 +02:00 by Alexander N. · 16 comments
Member

%%%--- Operating System, Graphics card ---
Windows 7 64 bit

- Blender version with error, and version that worked ---

blender-2.68-r59934M-win64.zip - without issue
blender-2.68-r60028M-win64.zip - with issue

- Short description of error ---

when i open blender with specific position and size (e.g. for screen casting), by passing the following arguments:
"-w -p 685 300 1280 720 -con"
the position and size of the blender application window differs from all previous builds in the past.

- Steps for others to reproduce the error (preferably based on attached .blend file) ---
  1. open blender build r59934 with arguments
    e.g.: "F:_DOWNLOADS_unsorted\blender-2.68-r59934M-win64\blender.exe -w -p 685 300 1280 720 -con"

  2. open blender build r60028 with arguments
    e.g.: "F:_DOWNLOADS_unsorted\blender-2.68-r60028M-win64\blender.exe -w -p 685 300 1280 720 -con"

(see attached screenshots)%%%

%%%--- Operating System, Graphics card --- Windows 7 64 bit - Blender version with error, and version that worked --- blender-2.68-r59934M-win64.zip - without issue blender-2.68-r60028M-win64.zip - with issue - Short description of error --- when i open blender with specific position and size (e.g. for screen casting), by passing the following arguments: "-w -p 685 300 1280 720 -con" the position and size of the blender application window differs from all previous builds in the past. - Steps for others to reproduce the error (preferably based on attached .blend file) --- 1. open blender build r59934 with arguments e.g.: "F:\_DOWNLOADS\_unsorted\blender-2.68-r59934M-win64\blender.exe -w -p 685 300 1280 720 -con" 2. open blender build r60028 with arguments e.g.: "F:\_DOWNLOADS\_unsorted\blender-2.68-r60028M-win64\blender.exe -w -p 685 300 1280 720 -con" (see attached screenshots)%%%
Author
Member

Changed status to: 'Open'

Changed status to: 'Open'
Author
Member

%%%i think commits 59985 and 59986 are the reason why...%%%

%%%i think commits 59985 and 59986 are the reason why...%%%
Member

%%%Hmm, onn my machine the blender window still opens in the spot it is supposed to and with the size it is supposed to. For screencasting I use the startup command: blender --factory-startup -w -p 390 220 1024 768 . This positions the blender window exactly in the Camtasia record area I've set up, even after the commit.

I'll have to further investigate why it changes for you, I'm not sure yet. If any, the second commit is probably related to this, but that means that Blender windowmanager needs to get some knowledge of the checks that where done in the window constructor. Not sure yet how to tackle.%%%

%%%Hmm, onn my machine the blender window still opens in the spot it is supposed to and with the size it is supposed to. For screencasting I use the startup command: blender --factory-startup -w -p 390 220 1024 768 . This positions the blender window exactly in the Camtasia record area I've set up, even after the commit. I'll have to further investigate why it changes for you, I'm not sure yet. If any, the second commit is probably related to this, but that means that Blender windowmanager needs to get some knowledge of the checks that where done in the window constructor. Not sure yet how to tackle.%%%

%%%The desktop in this case has resolution 1920x1200. The specified x coordinates are 685 + 1280 = 1965, so that's past the right side of the screen.

I don't know how this deals with window decorations and the taskbar, but the old behavior is definitely wrong?%%%

%%%The desktop in this case has resolution 1920x1200. The specified x coordinates are 685 + 1280 = 1965, so that's past the right side of the screen. I don't know how this deals with window decorations and the taskbar, but the old behavior is definitely wrong?%%%
Member

%%%I think I found the issue. The monitor info removal was correct in r59986, but the provisions for window borders and caption shouldn't have been removed.%%%

%%%I think I found the issue. The monitor info removal was correct in r59986, but the provisions for window borders and caption shouldn't have been removed.%%%
Member

%%%@brecht, ah, good observation. Indeed, the old code would always change window size and location if it fell outside primary monitor. This isn't done anymore. At most windowmanager should alter window sizes if they fall outside desktop area, if that is still wanted.

But that still leaves to think about whether or not to account for window frame and caption. I.e. when a new window is created in windowmanager, does that mean the screen area Blender wants to draw on, or just the size of the window, and then use whatever Blender gets inside that...%%%

%%%@brecht, ah, good observation. Indeed, the old code would always change window size and location if it fell outside primary monitor. This isn't done anymore. At most windowmanager should alter window sizes if they fall outside desktop area, if that is still wanted. But that still leaves to think about whether or not to account for window frame and caption. I.e. when a new window is created in windowmanager, does that mean the screen area Blender wants to draw on, or just the size of the window, and then use whatever Blender gets inside that...%%%
Author
Member

%%%what behavior is correct for the given argument?

  • w -p 685 300 1280 720

in the past, it open blender with an "inner" windows size of 1280 by 720
(this behavior i liked very much, because for screen cast i don't capture the window borders so it was easy to size the inner region to 1280x720)

in the current, it opens an "outer" window size of 1280 by 720
(now, i have to measure how big the window borders are to calculate backwards to know, what values i have to pass to get an inner window size of 1280x720).

PS.: i have only one single display. this happens on different windows 7 64bit computers.
PPS.: i tested 32 bit and 64 bit version of blender (because there are different resolution handling), but both working in the same way. i also changed the resolution (DPI), but that will not affect the ("outer") size and position. and i toggled the taskbar to hidden... all will not affect the position and size.

PPPS.: the position of the newer build seems to be better than in the past (i never counted the pixels of the position before)

... so my only open question is, if the sizes defines the inner or outer window size?%%%

%%%what behavior is correct for the given argument? - w -p 685 300 1280 720 in the past, it open blender with an "inner" windows size of 1280 by 720 (this behavior i liked very much, because for screen cast i don't capture the window borders so it was easy to size the inner region to 1280x720) in the current, it opens an "outer" window size of 1280 by 720 (now, i have to measure how big the window borders are to calculate backwards to know, what values i have to pass to get an inner window size of 1280x720). PS.: i have only one single display. this happens on different windows 7 64bit computers. PPS.: i tested 32 bit and 64 bit version of blender (because there are different resolution handling), but both working in the same way. i also changed the resolution (DPI), but that will not affect the ("outer") size and position. and i toggled the taskbar to hidden... all will not affect the position and size. PPPS.: the position of the newer build seems to be better than in the past (i never counted the pixels of the position before) ... so my only open question is, if the sizes defines the inner or outer window size?%%%

%%%Ah ok, not necessarily wrong then. And the difference in height then can be explained by the window decorations being included.

Just tested here, and on OS X the window is also moved to stay within the screen, and the window decorations are not included (so the actual Blender GUI has the specified size but the entire window is a bit bigger than specified). To be consistent with the previous behavior and other platforms it may be good to change back those two things?
%%%

%%%Ah ok, not necessarily wrong then. And the difference in height then can be explained by the window decorations being included. Just tested here, and on OS X the window is also moved to stay within the screen, and the window decorations are not included (so the actual Blender GUI has the specified size but the entire window is a bit bigger than specified). To be consistent with the previous behavior and other platforms it may be good to change back those two things? %%%
Author
Member

%%%my personally suggestion would be:
for inner window sizing, i would like get back the old implementation.
the inner window positioning of the old implementation was not correct. but the current implementation does only calculate the outer window position.
%%%

%%%my personally suggestion would be: for inner window sizing, i would like get back the old implementation. the inner window positioning of the old implementation was not correct. but the current implementation does only calculate the outer window position. %%%
Member

%%%Yes, I'm making changes to get blender screen area as requested size.%%%

%%%Yes, I'm making changes to get blender screen area as requested size.%%%
Member

%%%lower left corner of blender screen area will be as requested, with dimensions as requested.%%%

%%%lower left corner of blender screen area will be as requested, with dimensions as requested.%%%
Member

%%%Fixed in r60046%%%

%%%Fixed in r60046%%%

%%%Hi,

there seems to be still an issue with the render window in Cycles. Just take the default scene, switch to Cycles and choose as Display "New Window" and the press F12. In my case the upper part of the render window is outside of the screen. I need then to left click on one of the visible window edges to get the complete render window back in view. I use a screen solution of 1024x768 on Win 7 64 bit with Nvidia Card. %%%

%%%Hi, there seems to be still an issue with the render window in Cycles. Just take the default scene, switch to Cycles and choose as Display "New Window" and the press F12. In my case the upper part of the render window is outside of the screen. I need then to left click on one of the visible window edges to get the complete render window back in view. I use a screen solution of 1024x768 on Win 7 64 bit with Nvidia Card. %%%
Member

%%%Hi,

We discussed today on IRC how to handle this better, and it was decided to collect in a wiki document the current status of GHOST and windowmanager modules and how they behave on the supported OSes.

When that is completed an effort to sanitize how this work both code-wise and from user perspective will be done, and I think most of these issues will be then tackled.

In this case I think it is windowmanager requesting for a too large window. Right now Blender doesn't know much about window decoration (frame, caption), but this probably has to change in a way that is useful on all OSes.%%%

%%%Hi, We discussed today on IRC how to handle this better, and it was decided to collect in a wiki document the current status of GHOST and windowmanager modules and how they behave on the supported OSes. When that is completed an effort to sanitize how this work both code-wise and from user perspective will be done, and I think most of these issues will be then tackled. In this case I think it is windowmanager requesting for a too large window. Right now Blender doesn't know much about window decoration (frame, caption), but this probably has to change in a way that is useful on all OSes.%%%
Author
Member

%%%hello Nathan Letwory,

i tested it (blender-2.68-r60058M-win64.zip) and it looks good to me.
inner position - ok,
inner size - ok,
multimonitor (relative to main screen) - ok,
auto hidden task bar - ok (relative to screen),
task bar (on top, legt, right, bottom) - ok (relative to screen),
DPI >100% - ok,
32bit blender on 64bit OS / 64bit blender on 64bit OS - ok.

thank you for the fix.%%%

%%%hello Nathan Letwory, i tested it (blender-2.68-r60058M-win64.zip) and it looks good to me. inner position - ok, inner size - ok, multimonitor (relative to main screen) - ok, auto hidden task bar - ok (relative to screen), task bar (on top, legt, right, bottom) - ok (relative to screen), DPI >100% - ok, 32bit blender on 64bit OS / 64bit blender on 64bit OS - ok. thank you for the fix.%%%
Member

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#36702
No description provided.