Question about the splash screen



I am using JUCE to build my first C++ application and so far have been pretty successful and have been enjoying figuring out what it can accomplish. I have a question about the splash screen though, one which I hope one of your legal experts can advise me on.

The layout of my application has a playback panel at the bottom of the screen, and when the logo appears it prevents me from accessing some of the controls for the 4 seconds it is there. This wouldn’t be such a nuisance if it didn’t open a hyperlink when you click on it(even as it is fading out and you think it’s already gone). My solution was to put this at the bottom of the MainWindow’s default constructor:

// move the splash logo so it isnt directly over the gui buttons
Component *splash = this->getChildComponent(this->getNumChildComponents() - 1);
splash->setTopRightPosition(this->getWidth(), 70 - splash->getHeight());

This doesn’t remove the splash screen, but just moves it to the top right corner.

I do not have a pro license and would like to keep the logo from obstructing the functionality of the program, but I obviously dont want to break my license agreement. Am I allowed to move the component like this? It doesn’t impair its functionality, nor does it alter any of the juce framework’s source code to do so. If I’m not allowed to do this I will promptly remove those 2 lines of code.

Thanks in advance.

EDIT: Maybe I could request that a method/property be implemented into the JUCEApplication class that allows you to specify which corner the logo appears in and redraws the gradient according to the corner? I’m sure I’m not the only person who would benefit from this.

Also, to clarify I would like to publish this program under a GPL license, but for now it is closed source until I get it to a point where I can release it. I currently do not have a license attached to Composer.


To publish a program under a GPL license you only need to supply the source code to the same people you supply the program to - you are not required to make the code publicly available unless the program itself is also publicly available. This means, in the vast majority of cases, that you can develop software in private with no restrictions.

Does this help? If so, you can simply compile the Projucer in “GPL mode” by changing JUCER_ENABLE_GPL_MODE in the Projucer’s AppConfig.h and disable the splash screen (and the analytics collection too, if you want).


When I published the post I was wanting to publish with an MIT license(which I wanted to at first), but after looking into it I realized I’m going to have to use a GPL, which I already knew allowed me to disable the splash and data collection. At this point I’m wanting to know in case I DO decide to make something with JUCE that isn’t under GPL.

Btw, just in case you’re curious, Composer is essentially a music player for dynamic video game music tracks. It operates on music with a start sound file, various loops that can be played in any order, alternate loops, an end, and an alternate end.


Yes, I’m afraid you won’t be able to publish JUCE-licensed code under anything other than the JUCE license or the GPL (or the ISC, if you only use the few modules that are licensed this way).

As long as the whole of the splash screen remains clearly visible you can relocate it within a window if you wish.