Commit Graph

809 Commits

Author SHA1 Message Date
96b2dc8e13 style cleanup: changes from recent commits 2012-12-13 01:00:21 +00:00
12b642062c Holiday coding log :)
Nice formatted version (pictures soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.66/Usability

Short list of main changes:

- Transparent region option (over main region), added code to blend in/out such panels.
- Min size window now 640 x 480
- Fixed DPI for ui - lots of cleanup and changes everywhere. Icon image need correct size still, layer-in-use icon needs remake.
- Macbook retina support, use command line --no-native-pixels to disable it
- Timeline Marker label was drawing wrong
- Trackpad and magic mouse: supports zoom (hold ctrl)
- Fix for splash position: removed ghost function and made window size update after creation immediate
- Fast undo buffer save now adds UI as well. Could be checked for regular file save even...
  Quit.blend and temp file saving use this now.
- Dixed filename in window on reading quit.blend or temp saves, and they now add a warning in window title: "(Recovered)"
- New Userpref option "Keep Session" - this always saves quit.blend, and loads on start.
  This allows keeping UI and data without actual saves, until you actually save.
  When you load startup.blend and quit, it recognises the quit.blend as a startup (no file name in header)
- Added 3D view copy/paste buffers (selected objects). Shortcuts ctrl-c, ctrl-v (OSX, cmd-c, cmd-v). 
  Coded partial file saving for it. Could be used for other purposes. Todo: use OS clipboards. 
- User preferences (themes, keymaps, user settings) now can be saved as a separate file.
  Old option is called "Save Startup File" the new one "Save User Settings".
  To visualise this difference, the 'save startup file' button has been removed from user preferences window. That option is available as CTRL+U and in File menu still.
- OSX: fixed bug that stopped giving mouse events outside window.
  This also fixes "Continuous Grab" for OSX. (error since 2009)
2012-12-12 18:58:11 +00:00
858149d7c7 bmesh py api: add bmesh.update_edit_mode(), there was no way to redraw the 3d view or re-calculate face tessellation from python.
add py template for editing meshes in editmode.

also remove double call to CTX_wm_region which does a string lookup.
2012-11-29 05:02:06 +00:00
83169542c5 Fix #33271: Box tool delay
Issue was introduced in svn rev51808 which was a fix for #33038

One of changes in that patch lead to a situation that if some keymap don't have
modifier key it wouldn't be triggered in cases modifier key was pressed.
2012-11-23 10:00:15 +00:00
b867f9f17e style cleanup: comments & spelling 2012-11-18 01:22:31 +00:00
7d583e37bb Bugfix, IRC report:
NumPad emulation code wasn't working for double-clicks, preventing to fast
type same values in buttons (Like, 111111 resulted in 111 only).

Moved the emulation hack to where it belongs, in lowest level function that
interprets the ghost events for Blender's WM events.
2012-11-11 13:12:53 +00:00
eff734203f add fallbacks for BM_vert_calc_shell_factor() and BM_vert_calc_mean_tagged_edge_length() to avoid divide by zero when a vertex has no connected geometry.
also style cleanup.
2012-11-09 08:28:14 +00:00
6da6c99221 Small fix:
Pressing ESC for renders now checks for modifier keys, and doesn't escape renders
when a modifier key is held. In Windows, SHIFT+CTRL+ESC brings up task manager,
and it seems to pass on the event.
2012-11-08 11:31:15 +00:00
48f968edc2 Bugfix: on Linux (X11) the inactive window was not getting mouse-move events.
This feature has been working in OSX for long - to see mouse-overs on buttons
from inactive windows (and tooltips) and allow a button to be active for
input right away.

Will need check by linuxers if this works satisfying. Also Windows now might
support this feature.
2012-11-06 13:22:33 +00:00
b2d21a1747 fix for release building 2012-11-01 17:02:01 +00:00
7b9360e05a Bugfix [#33036] Invalid memory read in wm_handlers_do (valgrind warning) 2012-11-01 16:15:00 +00:00
818e9ff88d Bugfix #33038
TIMER events could get keymodifier set - in this case the user assigned
spacebar modifier for setting views (running smoothview timer)

Also: cleaned op old hacks from event checking code. 
The rule should be:

1) generate event properly, frozen state
2) pass on to handlers without exceptions or changing internal state

The only exception currently is for the "CLICK" (map key-release to unhandled
key-press).

Also: made --debug-event print OK. Slight cleanup in eventprinting in general.
It was putting the wmEvent state print in wrong place, doing it 4 or 8 times.
2012-11-01 15:51:24 +00:00
4fc1a3c8b3 fix for possible buffer overflow in gpu_nodes_get_vertex_attributes() and hair_velocity_smoothing()
and a unlikely NULL pointer dereference in unlink_material_cb().
2012-11-01 09:56:18 +00:00
ae097e72a3 Bugfix #33031
Holding down non-modifer keys was generating double-clicks - my fault!
2012-10-31 18:47:49 +00:00
38a0d48fa7 Bugfix #33032
(since 2010)

- Using 2-button mouse emulation (common for tablets)
- Press LMB, start painting, press ALT, release LMB
- This kept painting to run, since the release event was a MMB,
  not handled by paint code.
2012-10-31 17:28:21 +00:00
d705c52e65 no longer use 'check_existing' to see if we need to have a save popup, instead use 'exec' operator on a saved file and
invoke on unsaved files.

correct missing memset --> CustomData_reset switch too.
2012-10-31 17:03:31 +00:00
6ae77bed7a fix [#30479] Exclamation mark '!' doesn't input with AZERTY keyboard mapping
For the french keyboard setting (AZERTY) on Windows, the '!' came back with winevent->type=312, winevent->ascii='!' and the ISTEXTINPUT only matched key codes up to 255. Now replaces with
ISKEYBOARD in wm_eventmatch.
2012-10-30 21:06:25 +00:00
c8975c4375 style cleanup 2012-10-30 12:18:45 +00:00
e73cfb0a24 To keep my commit rate high! :) 2012-10-29 17:47:56 +00:00
df7a2d2b66 Yet another hanging variable in event code - code cleanup woes.
This should make trackpads work.
2012-10-29 17:44:05 +00:00
76288fad8c Fix to make NDoF work again. 2012-10-29 15:40:43 +00:00
279de03fc5 New woes in event system :)
Last cleanup resulted in the dreaded "Click" to fail again. Commented it.
2012-10-29 12:48:51 +00:00
f54983d109 A last (I hope) tweak for double click detection. 2012-10-29 11:08:10 +00:00
23929c4c53 Bugfix #32996
Backspace event is messed up - it was inserting weird characters in the editors.
Added check for proper keypress now. Will check real issue later.
2012-10-29 08:59:47 +00:00
5549904171 style cleanup 2012-10-29 02:11:40 +00:00
0c6a0b293f style cleanup 2012-10-28 15:23:16 +00:00
d800cffaf1 Event system fix:
Now modifier key press gets generated without having own modifier set.
Same happens for double clicks on modifiers.

This also fixes case: press shift twice first, modifier fails.
2012-10-28 14:49:40 +00:00
dca3587edd Event system cleanup: bringing KM_CLICK back in control.
- Solved Modal Keymap hijack of event codes
  (with note this should be coded better)

- Added dedicated state variable check_click in event to trigger it

All this in an attempt to get code understandable and predictable again. :)

This solves error like:
- editmode mesh
- select a vertex
- grab it, press control for grid snap
- on LMB assign, it also did an extrude.
2012-10-28 11:19:35 +00:00
c9e5b1e6ee add --debug-handlers so --debug-events isnt so noisy. 2012-10-27 15:05:12 +00:00
7413adce04 add back debug prints for event handlers. not sure why they were removed in r51683 2012-10-27 14:55:31 +00:00
4682e7c7ce Another tweak in event code to get KM_CLICK work.
It was copying 'prevval' and 'prevtype' too often - can cause issues with
different event systems or perifirals.
2012-10-27 13:35:33 +00:00
3189dac959 The UI wasn't capable of handling Double Click events; causing fast typing to
not work.

This is a temporary fix to make button type work. I'll check on other cases
now too. 

Best would be to have UI code return correct flags for whether it has
done something or not. This hasn't been coded really - so that's a todo for
a later cleanup there.
2012-10-27 09:52:26 +00:00
e903701450 style cleanup 2012-10-27 01:46:47 +00:00
dd176509fd Bugfix for new handling of double-click:
The modifier keys were getting own key as modifier :)
Made it not possible to use them for events.

Still open issue: for some reason modifer key 'press' gets swallowed.
Digging into that.
2012-10-26 16:46:26 +00:00
37bf6ef044 Bugfix #28734
Double clicks were never working reliably in Blender - this mostly because
it wasn't a real event, but something generated in the handler code.

Now it is an actual event - meaning it always gets handled (if you have
a keymap item for it of course), but if there's no doubleclick handling
it treats the doubleclick as a normal click.

Also cleaned code. No recursion anymore.
2012-10-26 15:21:31 +00:00
da9f9c27bc debug output: stop printing event handlers for mouse moves of mouse inbetween events. 2012-10-23 13:29:56 +00:00
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
29392dc2b4 don't print mousemoves with wm_handlers_do and --debug-events 2012-10-20 16:04:15 +00:00
4c936221a3 Fix #32705: Esc a value change doesn't recalc compositor
Seems the issue was caused by G.is_break set to Truth on both escape
press and release. This ended up in situation when after press event
compositor was tagged to redraw and new job was started. On escape
release this compositor job was cancelled.

Made it so G.is_break is setting on escape press event only.
2012-10-19 11:47:33 +00:00
8e01b8959e style cleanup 2012-10-14 13:08:19 +00:00
e8872a8ea2 style cleanup: if(); 2012-10-07 09:48:59 +00:00
d732e05740 fix for header not updating with an error report when a job finishes.
was reported as a reply to [#32537], but is a different issue then the original report.
2012-09-28 04:00:06 +00:00
c5baae40f7 wm_event_do_handlers was calling sound_sync_scene() twice without error checking the result of the second call. 2012-09-27 02:18:14 +00:00
1541ee20c8 Improvement to own commit r50810.
Add an optional ghost argument to set the new mouse location when un-grabbing. - without this the mouse would flicker at the old location before moving to the new location - when using the color picker for eg.
2012-09-22 13:23:12 +00:00
1a7eb3454e style cleanup 2012-09-08 08:59:47 +00:00
8cf9e5f8c3 change templates to call modal_handler_add() is called last since any errors between calling this function and returning will crash blender. see [#30687] 2012-09-05 00:11:39 +00:00
56b28635e7 code cleanup: rename BLI_in_rctf() --> BLI_rctf_isect_pt(), to conform with our naming convention. 2012-08-23 18:25:45 +00:00
adec7cdea2 Patch #32326: NDOF support of rotation and panning the view at the same time
Additional changes:
- Option to the ndof menu letting you pick turntable/trackball independently
  of the mouse viewport navigation style
- Option to change the rotation sensitivity separate from the panning

Holding shift + moving the ndof does just as before locking it to panning
Holding ctrl + moving will lock it to only rotation

Patch by Fredrik Hansson, thanks!

Reviewed by self and Mike Erwin.
2012-08-19 13:52:36 +00:00
c567cf3fab code cleanup: WM naming conventions 2012-08-11 21:35:24 +00:00
f0951f58ca code cleanup: rename G.afbreek --> is_break, G.rendering --> is_rendering 2012-08-08 18:37:06 +00:00