Mirror modifier no longer uses bmesh, but is now
100% CDDM. This is faster; the sluggishness was
driving me crazy. Still need to deal with UVs,
but that shouldn't be hard.
available on many keyboards these days, so that they can be used for
animation playback (giving more options over alt-a and alt-a ad-
infinitum).
Currently, this is Windows only as I don't have a Linux/Mac system to
test on (it should compile with both mingw and msvc, at least using
scons). Maintainers for those systems can probably easily add this in
once they find out the relevant mappings for those systems.
Some reorg of modules/pages, start makesdna and makesrna.
In many places license block needs to be changed to not start with /**, because otherwise documentation will go weird.
reported by Micael Dias (and many others, see duplicates list)
On closing the first ("main") Blender window the very first OpenGL context
got deleted too. This context needs to be retained, since we share quite a
bit of OpenGL data through it to the newly created contexts (new windows).
Thanks to Ton Roosendaal for thinking out loud while trying to figure out
what the actual cause was.
The console was getting flooded with output like
g
i
i
...
all as a result of what looks like a debugging print. Whoever put this
in, you can get back your debugging prints by enabling BF_GHOST_DEBUG
in your local config :)
Submitted by Alexander Kuznetsov.
This adds the progress bar to the taskbar item of Blender for Windows 7.
Small change in version retrieval, otherwise as is.
Some window manager can set default value of this to be the
screen size, so running blender with -p or --window-geometry
don't work with value bigger than that.
This commit try to "avoid" the bug #25709, but at the end
depend on the window manager, so maybe work or maybe not.
Slightly modified to better fit in architecture (moved to related GHOST SystemPaths)
Thanks to Harley Acheson for the research and for providing the original patch.
Note: I added empty function for X11(Linux) and Mac (Carbon and Cocoa) to be implemented still.
Reported by Nils Austa
There was double handling of modifier keys. With my autumn work on the modifier keys I had moved state checks for
modifier keys into convertKey(), but left the call to handleModifierKeys. That caused problems with proper
modifier key handling in the entire key handling code of GHOST.
Problem is is with operator redo which click-extrude exposed.
Check if redo operator can run, otherwise lock the UI and add a label that the operator doesn't support redo.
This is clunky but IMHO better then failing silently and leaving the user confused.
- Merged redo functions into ED_undo_operator_repeat(), code was duplicated in a few places.
- added WM_operator_repeat_check to check if WM_operator_repeat() can run, avoids an undo call when redo work.
Unrelated changes
- GHOST_SystemWin32.cpp set to utf8 encoding.
- cmake_consistency_check.py now checks source files are utf8.
reported by Eclectiel L
When working with very heavy scenes Blender can seem to 'hang' (not responding). Key events that happen
during this period may get lost, especially for modifier keys.
Adding extra handling to account for these situations.
I've got my testing framework done now. It's based on
recording events at the GHOST level. This has issues;
a test created on one computer might not pass on
another, due to floating point inaccuracies (though
I tried to blunt this a bit).
This isn't appropriate for general use. I
wrote it for personal use, and other devs might
find it useful for their personal use as well.
However, it lacks the reliability you'd need for
a real unit testing framework.
This isn't meant to replace lief's work, by any means, which
is a real unit testing framework.
Reported by Lluc Romaní Brasó
Some of my earlier changes to the modifier handling code accidently sent out new events for modifier keys when they where held down (repeat).
Also lay foundation for shift+numpad handling.