-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
add splash screen #17202
add splash screen #17202
Conversation
maybe add an option to disable that via preferences dialog or darktablerc |
Is there any possibility of start showing the UI while those happen? I think I am not the only one that hates splash screens |
@MStraeten done |
Tested, works but I'd like to have a better, bigger splash screen with the dt logo :) Is there some UI designer reading this? |
Maybe we can contact the person from this topic: https://discuss.pixls.us/t/i-am-working-on-a-rebrand-for-darktable/44382 |
I wanted to have the logo, but decided not to spend time trying to figure out how to get it to show until I was sure that a splash screen would be accepted. |
Sure, to me we probably can have more than just a logo. I'm thinking about a whole visual (logo + pictures + lines... + whatever will make a whaou effect :), that's why I think a UI designer could shine in :) |
If you want more than an update of a text string as each major step of the initialization completes, it will probably be necessary to fire up a separate job running an event loop, since most of those steps aren't readily interruptible or subdividable. That whole "major reorganization" I mentioned upthread.... |
Well all is possible, we could have a single nice images with logo an an area of updating text. I don't want to put too much pressure as this splash-screen is anyway visible for few seconds only. |
8ab4142
to
9e0a189
Compare
Added the darktable logo. I set it to 200px, but we could make it larger to match the width of the title text (though the exact sizing depends on the theming, including font, so it switches once dt loads its CSS). |
0c23deb
to
13e9c85
Compare
Other than the issues with attempted progress updates after LUA initialization causing the UI to freeze (permanently, as far as I can tell), I'm happy with the code now. The sidecar crawl shows both percentage complete and estimated remaining time, updated each second, and all styling has been moved into the CSS file, which is now loaded early enough that the styling of the splash screen doesn't change in the middle of startup. |
Adding the check for whether the image being updated is the image in darkroom was easy enough, but that disables the ability to paste/compress/reset history on the image you're actively editing.... I tried putting in a check for whether the darkroom image is the same one as when the bulk operation started, but that just makes darktable crash. I'm about to start my busy semester, so if I can't figure it out this weekend, I'll make a new PR which simply adds the busy cursor to those operations instead of progress meters and background execution. |
@ralfbrown : Hum comment in wrong PR :) Can you move it at the right place? |
How the heck did that happen? |
628f058
to
d608694
Compare
Rebased to fix merge conflict, added bugfix, and partially squashed. |
Given that I'm just starting to learn Gtk and don't have a secondary monitor, I'll need assistance in fixing that glitch. |
d608694
to
e798fd8
Compare
Rebased and merge conflict fixed. |
@TurboGit I've managed to fix your ghost screen. There may still be a momentary flash of the default geometry before it disappears again and the rest of the GUI initialization completes before showing the window in its final geometry. I tried moving the initial |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I confirm no more ghost screen... But (and I cannot give you a screenshot) I don't have the main darktable visible now :) That is, when the splash screen closes the main UI is invisible. It is there as the DE said that darktable is opened and on the external screen... but just nothing visible!
Just tested, works for me. Ubuntu 22.04, X windows |
That's what the SVG which is currently in the pixmaps directory looks like. We could replace it with a version like on your suggested splash screen; I just took a look and it will be a bit of a pain to extract since there isn't an object collecting all of the blades (each with multiple layers). |
I can have a look. |
Ok, the dull logo is because the splash screen is using |
BTW, do we really want an exit splash screen? I don't know a single software doing that. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know that this is not the final version, but I have some comments on the code.
There's potentially a lot going on which is time-consuming and prevents a new start until it completes. I'm fine without, I only added it because of the discussion upthread. |
Hmm, can we force the SVG by removing the 256x256 PNG? Will have to give it a try. |
I have a proposed fix, see my PR. |
Cherry-picked your hicolor code, fixed pathnames. Also parse the version number to not hard-code number of chars shown, and disabled exit screen. |
@fabiosirna : We have a version is almost ready, we can of course give you some more time to come with an alternative version. There is no urgency here, so please let us know if you want to pursue this work and propose something different and possibly better for darktable. I would say that the dead-line is end of October to ensure potential issues are fixed before the next release. TIA. |
hey @TurboGit reviewed feedback and suggestion. Here the design for the 3 iteration:
darktable-opening-closing-screen-003-iteration.webmFeel free to drop comments. Edit: re-uploading the video, as it was cutted before the end. |
Note that I will basically be disappearing from Github in a little over a week (until mid-December). I'm fine with whatever reworking of the design is agreed on, but someone else will have to do the actual coding at that time. @TurboGit Also, from my two still-pending PRs, you should at least cherry-pick commit 897ede6 from PR17368 to suppress spurious white-balance error messages on load failure. And PR16810 has actually already had its documentation merged :). |
@ralfbrown : I have cherry-picked the commit. Thanks! |
I just installed master+17202+a few other PRs as daily driver (updating from 4.8.1) and discovered that the installed copy doesn't show the darktable logo on the splash screen. share/darktable/icons is not being copied to the install location -- once I copied that subtree, the logo showed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, working I'll squash everything for easy revert if needed. Let's move forward...
Hi, I just needed to compile dt from master branch and noticed the newly introduced splash window. I know the issue is closed, but I thought the design contrasts with that of darktable. What would you think of something like in the attached PNG? The main change is in background and foreground colors. Those are picked from darktable's default theme. Sans-serif font instead of serif to match the interface. I find the “unleash…” byline quite unnecessary :) Just my ¢2… |
Agreed. For the rest well the splash screen is not the main UI so the black color fit ok to me. |
Give the user feedback on the startup process as early as possible so that they aren't left wondering whether darktable is actually starting successfully (opening a large library can take multiple seconds even on SSD, and crawling a large collection for updated sidecars could potentially take over a minute).
Resolves #5782.