-
Notifications
You must be signed in to change notification settings - Fork 565
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Theme Refactoring (with new Theme: Cosmic Dusk) #5487
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- ThemeName ENUM (with all theme names) - ThemeManager Singleton - Theme Base class (to reset theme) - Theme classes for each unique UI theme: No Theme, Humanity, Humanity: Dark, and Cosmic Dusk (out new theme) - Cosmic Dusk theme still needs lots of work - Known Issue: When changing themes on the Preferences window, some widget styles do not refresh until the window is closed/re-opened - Renaming some dock widgets in the *.ui file - Updating translation system to support Theme names - Apply video widget background from current palette and not a hard-coded color
…onal testing of a non-webview timeline widget. For now though, it's a blank QWidget.
… Pixel size. Attempting to make font clearer on Windows.
… compatible with the existing TimelineView loading logic. So, whether a webview or qwidget backend is used, it is initialized mostly the same.
…lify the top of the timeline view file. Also, optimizing imports (removing unused imports)
…qwidget instead, for testing the new timeline widget backend.
# Conflicts: # src/language/OpenShot/OpenShot.pot # src/windows/views/timeline.py
…lar controller to top of document (so dynamic style tags are possible). Updating light theme and cosmic themes to better integrate web-view based timeline widgets.
…enu theming, web-view timeline scrollbar colors
…d corners and border color. Fixed some QMenu padding issues. Styled QTreeView and QListView in Cosmic Dust theme.
…from our current styles.
…ion, which can completly remove margins from a specific dock (i.e. timeline). - Refactored audio waveform display on timeline (simpler, cleaner, easier to debug, aligned with bottom of clip). - Added keyframe icons to Cosmic Dust theme - More Cosmic Dust theme improvements (no margin timeline, smaller tracks / clips, improved clip CSS) - Note: webkit rendering is broken in Cosmic Dust theme.
…tly show thumbnail and waveform without padding or resizing)
…tLocation function. Dragging files onto timeline now works in all themes, and works with better "diff" calculations for nearest track to drop the clip on.
…ery ui-darkness theme.
…ues with track snapping when dragging + scrollbar changes. - Shrinking transitions style for Cosmic Dust theme to fit on track. - Update track Y coordinates after a theme change, to make sure different size tracks from different themes still function correctly. - Improved snapping to prevent multi-layer selections from moving past the bottom of the timeline.
…move playhead when dragging one of these items (or resizing them). For example, if you start to drag a clip, and while dragging move your mouse up onto the timeline ruler.
…d fix drag Y offset to Python side.
…resh theme from OpenShot 1.3
…ving a redundant method. Fixing small regression in clip.js (missing variable).
…ight keyframe icons to be more visible (blue). Fixed transition render artifacts.
…ors are so hard to see)
…dgets start trying to invoke it
…on't freeze the main thread/window during load
…eed and turbulence. Also, slowed down the animation and made it flow smoother.
… color and emission strength.
… adding a different lighter press style.
…utomatically when changing screen DPI. This can be disabled in the "adjust_scaling_factor" settings file.
…S per monitor / screen.
…UNDING_POLICY to PassThrough, so Windows will stop showing our UI too big when 150% scaling is used, etc...
…ative QFileDialog scaling on 4K monitors)
…r version -dev scheme). Fixing x64 with amd64 for the manifest.
…ndows is not using it)
…ong limits, due to rasterization crashes at large sizes
…ips blurry, does not render borders, and causes many visual lines and artifacts as you interact with it.
- Rename Edit Toolbar to Timeline Toolbar - Expanded main window Menu descriptions - Added section on Timeline Toolbar options - Expanded Docks section with links to related pages
- Remove Gap and Remove All Gaps - Max limits on scale x/y and shear x/y - Updated Blender min version to 4.1 and updated doc references - Added Fuse library requirement for AppImage and AppImage launcher instructions - Mentioned High DPI monitor support, and troubleshooting steps and link to our wiki - Described 3 included themes
- Added list of vector titles - Added list of 3D animations
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In an effort to update the user-interface for OpenShot, first our theme engine needs some major refactoring.
Theme Engine
The current theme engine for OpenShot is really just a few lines of hard-coded stylesheet that is very difficult to work with. We need to refactor this into Classes, which can inherit some base theme properties, etc... We want new themes to be very easy to switch between, and we want real-time theme switching.
Timeline Refactor
We currently support 2 different webview-based timeline widgets (QWebKit and QWebEngine), and we will eventually replace both of these with a QWidget-based timeline widget. In the meantime, we need to refactor the timeline code to support a 3rd widget (experimental placeholder currently), and clean-up the timeline-related code as much as possible. This will be a gradual change-over, since much work remains on the new QWidget timeline widget. This will eventually be a huge simplification on how our timeline works, improved performance when editing projects, huge reduction in our download size, and a more feature-full timeline widget, which of course is also theme-able (due to this new theme engine).
New Theme
Part of this PR includes some initial work on a new UI theme for OpenShot. This is very early and should not be used by normal users yet. We have very detailed mock-ups and work-flows that we are moving towards, but it will be an iterative process before we switch the default theme.