Commit Graph
3696 Commits
Author SHA1 Message Date
itsmattkc 8e1be4a3ff nodeparamviewwidgetbridge: implemented editing font parameters 2020-07-10 02:40:09 +10:00
itsmattkc a4acf5f99e nodes: hash strings as their value rather than the struct
Erroneously hashed strings incorrectly so the actual string contents
weren't what was being hashed.
2020-07-10 02:39:09 +10:00
itsmattkc 8e75432304 project/timeline: save timeline tracklist state in project file 2020-07-08 19:19:32 +10:00
itsmattkc af69f157a3 timeline: improved beam tool and its derivatives 2020-07-07 18:43:18 +10:00
itsmattkc a239fa0e2f timeline: fixed some ripple tool behavior bugs 2020-07-07 18:06:49 +10:00
itsmattkc 6c3313721b Merge branch 'master' of https://github.com/olive-editor/olive.git 2020-07-07 13:18:27 +10:00
itsmattkc cb93b6bfa1 text: keep text confined within text-safe area 2020-07-07 13:16:41 +10:00
itsmattkc 919314cce8 renderer: improve thread safety
Since we share render backends between the viewer and cache tasks now, we
should ensure the render backend is thread safe.
2020-07-07 13:16:25 +10:00
itsmattkc 30de447cc5 Merge pull request #1168 from ThomasWilshaw/buildFix
Attempt to fix the current Travis Linux build issue
2020-07-07 00:19:32 +10:00
itsmattkc a45f514f68 renderer: share render backend for auto-cache tasks
Since auto-cache events start and stop fairly frequently (and are somewhat
heavy to create/destroy), we can save a lot of cycles over time by sharing
the same backend between them all.
2020-07-06 14:22:17 +10:00
itsmattkc 936d077077 project: use relative filenames if absolute don't exist 2020-07-06 14:03:22 +10:00
Thomas Wilshaw 098b40c98e Use cfloat instead of limits 2020-07-02 15:36:13 +01:00
Thomas Wilshaw b04fa02ab4 Explicitly include limits header to fix build issue on Linux. 2020-07-01 14:18:12 +01:00
itsmattkc 3e9f98e230 Merge branch 'master' of https://github.com/olive-editor/olive.git 2020-06-26 00:22:03 +10:00
itsmattkc c324de804c audiomanager: create and delete future watchers when necessary 2020-06-26 00:21:34 +10:00
itsmattkc 7523db099b cmake: use improved FindOpenEXR module 2020-06-26 00:21:12 +10:00
itsmattkc e064d37988 mainwindow: check for connected items before saving
Fixes segfault when saving an empty project/a project with no sequence
open.
2020-06-24 02:14:51 +10:00
itsmattkc b0a5d4f4c3 parampanel: set input after timestamp
Default TimeBasedWidget behavior is to jump to the playhead, but we want
the CurveView to zoom fit on open instead. So we set the input after the
timestamp to make this behavior possible.
2020-06-24 01:36:04 +10:00
itsmattkc d31c373bd0 curveview: transform times to target for zoom fit 2020-06-24 01:29:57 +10:00
itsmattkc 8bf653925f curve/timeline: improved user interface behavior
* Implements "auto-fit" setting for curve view and sets it on open.
* Improves scroll zooming on all TimelineViewBase derivatives.
* Improves code sharing for better maintenance.
2020-06-23 05:25:34 +10:00
itsmattkc e681b87988 curve/param/panels: leave curve panel open and have option for timebasedwidget to auto-set timebase 2020-06-23 05:22:58 +10:00
itsmattkc 2207a915a6 viewernode: check if timebase/size have actually changed before signalling
Minor optimization.
2020-06-23 05:15:48 +10:00
itsmattkc 1ec0d06e9f timebasedpanel: check if node is the same
Minor optimization.
2020-06-22 00:40:19 +10:00
itsmattkc 6ebcb7162e audiovisualwaveform: clamp audio values so they stay inbounds 2020-06-22 00:39:38 +10:00
itsmattkc 1725f01459 paramview: changed to static viewer-bound and fixed various scrolling issues 2020-06-22 00:38:00 +10:00
itsmattkc e97b5a9a14 nodeparamview: set time on node set
Fixes bug where keyframes would land on 0 unless the time is set a
second time.
2020-06-21 13:12:07 +10:00
itsmattkc 5f6e5916bc curvewidget: allow zooming only one axis and allow hiding keyframe tracks 2020-06-20 01:56:41 +10:00
itsmattkc a94caa5737 export: fixed bug that broke audio on export 2020-06-19 20:25:49 +10:00
itsmattkc 65ccac1dfe renderer: fixed bug that would render frames even after hash matching
Also enables the -Wshadow GCC warning to warn against the code bug that
caused this issue (and has caused other issues like it in the past).
2020-06-19 20:25:05 +10:00
itsmattkc b2a3cede2c renderer: re-use the same opengl instance for all background rendering
Previously the OpenGL instance was tied to each render/cache task,
creating and destroying it each time one started and stopped. This was
completely unnecessary since the instance holds no state and can be
shared by all of the render tasks without having to expensively start
a new one.
2020-06-19 17:06:14 +10:00
itsmattkc ab74c1579e mathnode: temporarily disable identity matrix detection
This code was faulty and needs extra functionality elsewhere to
actually work correctly.
2020-06-19 02:44:26 +10:00
itsmattkc fd8116a9de slider: use ctrl to switch axes 2020-06-19 02:36:09 +10:00
itsmattkc f8a8af9ec3 project: focus sequence if there is only one 2020-06-19 02:26:55 +10:00
itsmattkc 0280ade20d project: improved main window layout loading
There were a lot of issues that arose from trying to make GUI changes
from another thread (even though we ran those functions in the right
thread). Now we store layout information until the end of the load and
make the changes then. This works much better from both a business logic
and user experience perspective.

Also prevents multiple sequences from taking focus during load and
starting a render job.
2020-06-19 02:23:06 +10:00
itsmattkc 115e62f140 slider: further behavior improvements
Ladders appears offset on sliders with multipliers. Ladder also appears
on initial press (but still shows line edit if mouse wasn't moved)
2020-06-18 18:58:49 +10:00
itsmattkc 1f3e0db64b Merge branch 'master' of https://github.com/olive-editor/olive 2020-06-18 18:15:51 +10:00
itsmattkc e8c8fedcdb slider: stop ladder drag timer on release 2020-06-18 17:50:28 +10:00
itsmattkc 57f858dd92 nodetable: correctly update with time 2020-06-18 16:30:57 +10:00
itsmattkc e47c985baa slider: if a ladder appears, signal the label that the drag has finished 2020-06-18 16:30:36 +10:00
itsmattkc a717742cbc nodetable: show values in separate columns
Works for vector coordinates (e.g. XY, XYZ, etc.) as well as displays
checkboxes for RGB/A. Still non-functional.
2020-06-18 15:07:47 +10:00
itsmattkc 897b9ca3dd statusbar: disconnect old task when connecting a new one 2020-06-18 15:06:07 +10:00
itsmattkc c5dd406ff1 slider: improved ladder usability 2020-06-18 14:11:50 +10:00
itsmattkc 5397457c8d timeline: treat non-primary clicks as non-moving
Fixes bug where drag would get stuck if the user right clicked on the
timeline.
2020-06-18 03:35:59 +10:00
itsmattkc 4b0e6f97f7 Merge branch 'master' of https://github.com/olive-editor/olive 2020-06-17 20:50:21 +10:00
itsmattkc 57eb039b4c debug: print graphics driver in debug log
Might help with debugging GPU issues from users.
2020-06-17 20:50:03 +10:00
itsmattkc e0d27490e7 Merge branch 'master' of https://github.com/olive-editor/olive.git 2020-06-17 19:56:27 +10:00
itsmattkc b456b6b0f6 oiiodecoder: make sure spec is used instead of basetype
Fixed issue with image alpha handling.
2020-06-17 19:53:21 +10:00
itsmattkc a818e17c55 export: made progress on headless export
Still incomplete and unusable, but less so than before.
2020-06-17 18:06:50 +10:00
itsmattkc c3c26a8e24 cache: use openexr directly
OIIO lacks fidelity over OpenEXR's threading. Using it directly gives us
a little more control.
2020-06-17 17:49:54 +10:00
itsmattkc 2261f1147d renderer: catch failure to load pre-cached frame 2020-06-17 17:48:41 +10:00