Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-03Cleanup: Editors, Clang-Tidy else-after-return fixesSybren A. Stüvel
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule in the `source/blender/editors` module. No functional changes.
2020-04-03Cleanup: Rename bScreen variables from sc/scr to screenJulian Eisel
Part of T74432. Mostly a careful batch rename but had to do few smaller fixes. Also ran clang-format on affected files.
2020-04-03Cleanup: Rename ScrArea variables from sa to areaJulian Eisel
Follow up of b2ee1770d4c3 and 10c2254d412d, part of T74432. Now the area and region naming conventions should be less confusing. Mostly a careful batch rename but had to do few smaller fixes. Also ran clang-format on affected files.
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-03-06Cleanup: rename 'verify' to 'ensure' for BKE_image_viewer functionsCampbell Barton
2019-11-15Fix T71590: Closing file browser reopens previously closed render viewJulian Eisel
The render view window was never closed actually, just moved behind the main window. It's properly closed now. It should also behave more like expected when there already is a temporary window open (e.g. Preferences).
2019-11-11Fix T71474: Temporary image editor cancels to file editor after file operationJulian Eisel
2019-11-04UI: Rewrite stacked full-screen logic, fixing issuesJulian Eisel
To recreate the main issue: * Set render and file browser to show in full-screen in the preferences * Default scene, press F12 in 3D View * Press Alt+S to save the image * Escape the file browser * Escape the image editor The former 3D View would now show the image editor. This is a common use-case that should work. Full-screen code is a hassle to get to work as expected. There are reports from 2.5, I did lots of work years ago to get these kind of use-cases to work fine. But apparently I broke this one with a fix for another common use-case in March (0a28bb14222c). This now stores hints in the space, rather than the area, which should make things much more controlable and hopefully help us fix issues like this. Here are a few references describing further common issues (all should work fine now): 0a28bb14222c, e61588c5a544, T19296 Checked over this with Bastien, we agreed that at some point we should do a big rewrite of all of this, for now this is acceptable.
2019-10-31UI: Only show render result in image editors in view modeJulian Eisel
Previously, with the render display mode set to "Image Editor", we'd use any image editor that doesn't already show a (non-render-result) image, even if they weren't set to view mode (but UV, paint or mask mode). It could be confusing or annoying when using an Image Editor for a purpose that the mode wasn't created for. Note that with the introduction of a UV sub-Editor, the old behavor was even more confusing. Changing a UV Editor to show the render result was weird.
2019-10-03UI: Register File Browser as Child/Dialog-Window for the OSJulian Eisel
For many users, this will make the File Browser window behave more like what they would expect. It addresses the issue of the File Browser becoming hidden behind the main window by clicking anywhere in the latter. It communicates the interruptive, but temporary nature of the operation a bit better. Further, on tiling window managers the File Browser now opens as floating by default, like in other applications. Note that this also makes sure the File Browser is always opened as separate window, so it doesn't re-use the Preferences, or any other temporary window anymore. This seems to have been a common annoyance. More concretely, this makes the File Browser window behave as follows: * Stays on top of its parent Blender window, but not on top of non-Blender windows. * Minimizes with its parent window * Can be moved independently * Doesn't add an own item in task bars * Doesn't block other Blender windows (we may want to have this though) * Opens as floating window for tiling window managers (e.g. i3wm/Sway) Further notes: * When opening a file browser from the Preference window (or any temporary window), the main window, as the file browsers parent is moved on top of the Preferences, which makes it seem like the Preferences were closed. This is the general issue of bad secondary window handling as window activation changes. I made it so that the window is moved back once the file browser is closed. This behavior is confusing and would be nice to avoid. It's a separate issue though. * On most window managers on Linux the temporary window can not be minimized and maximized, they disable that for dialog windows. * On Windows and macOS, only minimizing is disabled, as there is no decent way yet to restore a window if it's not shown in the taskbar. Reviewed By: Brecht van Lommel, Campbell Barton, William Reynish Edits and macOS implementation by Brecht. Differential Revision: https://developer.blender.org/D5810 Part of T69652.
2019-09-18UI: Move render display type to PreferencesJulian Eisel
Moves the render display type (to choose between rendering in a new window, in a fullscreen area, in an Image Editor, etc) from the scene to the preferences.
2019-09-18Refactor temp-space opening for optional fullscreen modeJulian Eisel
Will be put to use in followup commits.
2019-08-17Cleanup: spellingCampbell Barton
2019-04-22Cleanup: style, use braces for editorsCampbell Barton
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-16DNA: rename SpaceButs -> SpacePropertiesCampbell Barton
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2018-06-29Merge branch 'master' into blender2.8Campbell Barton
2018-06-29Cleanup: trailing newlinesCampbell Barton
2018-06-11Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenkernel/BKE_mesh.h source/blender/blenkernel/intern/mesh_convert.c source/blender/editors/interface/interface_eyedropper_color.c source/blender/editors/object/object_add.c source/blender/editors/space_image/image_ops.c source/blender/makesrna/intern/rna_image.c source/blender/windowmanager/intern/wm_draw.c
2018-06-11Cleanup: remove moar ugly G.main usages...Bastien Montagne
BKE_image was an ugly nest, could fix all but the ones from compositor, so moved ugly G.main there, at least we know where the Evil is that way ;)
2018-06-04Merge branch 'master' into blender2.8Campbell Barton
2018-06-04Cleanup: strip trailing space in editorsCampbell Barton
2017-06-01Main Workspace IntegrationJulian Eisel
This commit does the main integration of workspaces, which is a design we agreed on during the 2.8 UI workshop (see https://wiki.blender.org/index.php/Dev:2.8/UI/Workshop_Writeup) Workspaces should generally be stable, I'm not aware of any remaining bugs (or I've forgotten them :) ). If you find any, let me know! (Exception: mode switching button might get out of sync with actual mode in some cases, would consider that a limitation/ToDo. Needs to be resolved at some point.) == Main Changes/Features * Introduces the new Workspaces as data-blocks. * Allow storing a number of custom workspaces as part of the user configuration. Needs further work to allow adding and deleting individual workspaces. * Bundle a default workspace configuration with Blender (current screen-layouts converted to workspaces). * Pressing button to add a workspace spawns a menu to select between "Duplicate Current" and the workspaces from the user configuration. If no workspaces are stored in the user configuration, the default workspaces are listed instead. * Store screen-layouts (`bScreen`) per workspace. * Store an active screen-layout per workspace. Changing the workspace will enable this layout. * Store active mode in workspace. Changing the workspace will also enter the mode of the new workspace. (Note that we still store the active mode in the object, moving this completely to workspaces is a separate project.) * Store an active render layer per workspace. * Moved mode switch from 3D View header to Info Editor header. * Store active scene in window (not directly workspace related, but overlaps quite a bit). * Removed 'Use Global Scene' User Preference option. * Compatibility with old files - a new workspace is created for every screen-layout of old files. Old Blender versions should be able to read files saved with workspace support as well. * Default .blend only contains one workspace ("General"). * Support appending workspaces. Opening files without UI and commandline rendering should work fine. Note that the UI is temporary! We plan to introduce a new global topbar that contains the workspace options and tabs for switching workspaces. == Technical Notes * Workspaces are data-blocks. * Adding and removing `bScreen`s should be done through `ED_workspace_layout` API now. * A workspace can be active in multiple windows at the same time. * The mode menu (which is now in the Info Editor header) doesn't display "Grease Pencil Edit" mode anymore since its availability depends on the active editor. Will be fixed by making Grease Pencil an own object type (as planned). * The button to change the active workspace object mode may get out of sync with the mode of the active object. Will either be resolved by moving mode out of object data, or we'll disable workspace modes again (there's a `#define USE_WORKSPACE_MODE` for that). * Screen-layouts (`bScreen`) are IDs and thus stored in a main list-base. Had to add a wrapper `WorkSpaceLayout` so we can store them in a list-base within workspaces, too. On the long run we could completely replace `bScreen` by workspace structs. * `WorkSpace` types use some special compiler trickery to allow marking structs and struct members as private. BKE_workspace API should be used for accessing those. * Added scene operators `SCENE_OT_`. Was previously done through screen operators. == BPY API Changes * Removed `Screen.scene`, added `Window.scene` * Removed `UserPreferencesView.use_global_scene` * Added `Context.workspace`, `Window.workspace` and `BlendData.workspaces` * Added `bpy.types.WorkSpace` containing `screens`, `object_mode` and `render_layer` * Added Screen.layout_name for the layout name that'll be displayed in the UI (may differ from internal name) == What's left? * There are a few open design questions (T50521). We should find the needed answers and implement them. * Allow adding and removing individual workspaces from workspace configuration (needs UI design). * Get the override system ready and support overrides per workspace. * Support custom UI setups as part of workspaces (hidden panels, hidden buttons, customizable toolbars, etc). * Allow enabling add-ons per workspace. * Support custom workspace keymaps. * Remove special exception for workspaces in linking code (so they're always appended, never linked). Depends on a few things, so best to solve later. * Get the topbar done. * Workspaces need a proper icon, current one is just a placeholder :) Reviewed By: campbellbarton, mont29 Tags: #user_interface, #bf_blender_2.8 Maniphest Tasks: T50521 Differential Revision: https://developer.blender.org/D2451
2017-04-20Fix T51248: user preferences window size not adapted to DPI.Brecht Van Lommel
2016-02-29Fix a bunch of temp full-screen glitchesJulian Eisel
Steps to reproduce fixed glitches were: * Change any editor to be file browser from menu, Ctrl+O *from the file browser area*, Esc -> area reset to what it was before changing to file browser initially * Ctrl+O from any area, F12, Esc -> returns to initial editor in full-screen (expected is file browser in full-screen) Fixes T46229 Core of the fix is removing old area from spacedata list when going back to previous area (see ED_area_prevspace -> BKE_spacedata_remove). Also, when creating a new temp area we now don't exit old area anymore (needed so SpaceFile->op is kept, but it also makes sense in general) Aaand finally removes some ugly hacks. Tested quite a bit, so I think it's safe to apply (besides of remark below), just would like to get things double checked and confirmed. After all, this full-screen stuff finally starts to feel like it's working :P Note, there's still a memory leak when quitting Blender with temp area open. Haven't found out how to solve yet, but it's not that important for review anyway. Reviewers: campbellbarton, brecht Reviewed By: brecht Subscribers: plyczkowski, Blendify Maniphest Tasks: T46229 Differential Revision: https://developer.blender.org/D1531
2015-10-06WM: Fix crash when a new window can't be createdCampbell Barton
Report an error instead of crashing if a new window can't be created (typically caused by bad drivers).
2015-06-08Fix yet another fullscreen glitchJulian Eisel
Steps to reproduce were: Toggle fullscreen->F12->F3->ESC 2x->3D View changed to Image Editor and didn't change back. Actually it doesn't work 100% as wanted since it exits the fullscreen when pressing ESC to exit Image Editor but it's hard to support all cases with such a weird spaghetti code.
2015-06-08Fix T44976: 3D View turns into an Image Editor after saving renderJulian Eisel
result Was a case of two stacked temporary fullscreens, so a quite extreme situation.
2015-05-28Aaaaand another fullscreen glitchJulian Eisel
Steps to reproduce were: Set a *Properties Editor* to fullscreen- >render->Info Editor is set to Image Editor instead of Properties Editor
2015-05-28Fix another fullscreen toggle glitchJulian Eisel
Steps to reproduce were: Set 3DView to fullscreen->render->toggle out of fullscreen->escape->Area doesn't change back to 3DView
2015-02-03Possible NULL de-reference on fullsceen checkCampbell Barton
Also quiet some other minor warnings
2015-01-28Stacked fullscreen area support (proper implemenation)julianeisel
Adds support for stacked fullscreens. This basically means, if a user opens a temporary fullscreen mode, such as the File Browser or the Image Editor render view, from a different fullscreen, the "Back to Previous" function or the other ways to escape those temporary fullscreens don't return to the split screen layout but to the previous fullscreen he has been in. I already committed something similar (f7e844570fea862) but that was only supposed as a fix, it didn't work for the "Back to Previous" operator and the implementation wasn't really reusable. This one looks a bit nicer + makes some older hacks unnecessary :)
2015-01-25Fix T43008: Support stacked fullscreen areasjulianeisel
2015-01-21BKE_screen: add BKE_screen_find_area_xyCampbell Barton
Use from eyedropper & screen operators also define SPACE_TYPE_ANY for readability.
2014-10-14Fullscreen Editor (new fullscreen mode for clean UI)Dalai Felinto
Organize Maximize/Fullscreen mess and add a new fullscreen mode with no UI * Maximize Editor: (old Ctrl+Up) * Full Screen Window: (old Alt + F11) * Full Screen Editor: new operator (Alt + F10) * Change Show/Hide Header: (Alt + F9) When the mode is on moving the mouse near the top right corner of the editor shows an icon to go back to the normal editor mode. This was originally intended for the multiview branch, but this functionality also benefits non-stereo workflows, thus it can be reviewed and committed independently. Development notes: * This includes cleanups in the code to sanitize the naming of fullscreen/maximize across the window/editor code. * Originally the idea was to make the window fullscreen as well, but this idea was dropped. * You can see the clicking area when debug is 1 * Technically the user can be left with an unfaded icon in the corner (specially when using a tablet). If we think this is too bad we can increase the action zone to be the whole screen, or something similar. Reviewers: campbellbarton [1], ton [2], fsiddi [2] [1] actual code review [2] design review Differential Revision: https://developer.blender.org/D678
2014-04-30Code cleanup: remove unused includesCampbell Barton
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-04-30Code cleanup: remove redundant CTX callsCampbell Barton
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-01-27Code cleanup: use booleans where appropriateCampbell Barton
2013-12-17Changes to partial update during renderingSergey Sharybin
Summary: Mainly addressed to solve old TODO with color managed fallback to CPU mode when displaying render result during rendering. That fallback was caused by the fact that partial image update was always acquiring image buffer for composite output and was only modifying display buffer directly. This was a big issue for Cycles rendering which renders layers one by one and wanted to display progress of each individual layer. This lead to situations when display buffer was based on what Cycles passes via RenderResult and didn't take layer/pass from image editor header into account. Now made it so image buffer which partial update is operating with always corresponds to what is set in image editor header. To make Cycles displaying progress of all the layers one by one made it so image_rect_update switches image editor user to newly rendering render layer. It happens only once when render engine starts rendering next render layer, so should not be annoying for navigation during rendering. Additional change to render engines was done to make it so they're able to merge composite output to final result without marking tile as done. This is done via do_merge_result argument to end_result() callback. This argument is optional so should not break script compatibility. Additional changes: - Partial display update for Blender Internal now happens from the same thread as tile rendering. This makes it so display conversion (which could be pretty heavy actually) is done in separate threads. Also gives better UI feedback when rendering easy scene with small tiles. - Avoid freeing/allocating byte buffer for render result if it's owned by the image buffer. Only mark it as invalid for color management. Saves loads of buffer re-allocations in cases when having several image editors opened with render result. This change in conjunction with the rest of the patch gave around 50%-100% speedup of render time when displaying non-combined pass during rendering on my laptop. - Partial display buffer update was wrong for buffers with number of channels different from 4. - Remove unused window from RenderJob. - Made image_buffer_rect_update static since it's only used in single file. Reviewers: brecht Reviewed By: brecht CC: dingto Differential Revision: http://developer.blender.org/D98
2013-04-13Usability fix, own collection.Ton Roosendaal
If you have two windows, each with different scene, the render output for a window would go to the other, if it was already drawing a render for the other scene. Now you can have renders draw correct in two windows for two scenes.
2013-03-13code cleanup: use const events for modal and invoke operators.Campbell Barton
2013-02-11style cleanup: also some typosCampbell Barton
2013-02-10Show/hide Render View should not raise temp user preferences windowsSv. Lockal
2012-12-14Fixes for correct UI scaling display:Ton Roosendaal
- Move to layer (and more popups) didn't scale yet - User Prefs and render window now open on right location on Mac Retinas - Brush sizes for painting now scale for Mac Retina
2012-10-21style cleanup: bge, switch statements mostly.Campbell Barton
also left bmesh decimator on in previous commit.
2012-10-21style cleanup: trailing tabs & expand some non prefix tabs into spaces.Campbell Barton