Skip to content
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

song editor window doesn't redraw properly at time of maximising #1249

Closed
Lx opened this issue Oct 30, 2014 · 13 comments
Closed

song editor window doesn't redraw properly at time of maximising #1249

Lx opened this issue Oct 30, 2014 · 13 comments
Labels
Milestone

Comments

@Lx
Copy link

Lx commented Oct 30, 2014

When maximising the song editor sub-window of LMMS, only the blocks visible before the maximise are redrawn. In order to cause all of the blocks to become visible, the window must be manually scrolled. Please refer to the two attached screen shots.

$ lmms --version
Linux MultiMedia Studio 1.0.3
(Linux x86_64, Qt 4.8.6, GCC 4.8.2)

$ dpkg -s lmms | grep Version:
Version: 1.0.3-src-0ubuntu1~ubuntu14.04.1

$ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description: Linux Mint 17 Qiana
Release: 17
Codename: qiana

Linux Mint 17 is a derivative of Ubuntu Trusty. Original Ubuntu bug report made here.

image

image

@tresf
Copy link
Member

tresf commented Oct 31, 2014

I'm not convinced it's a problem with LMMS (yet). It seems to happen only on some tracks for me making me believe it's a bug with QT's redraw methods (QT has a few redraw/GUI bugs that differ based on OS and QT version. For example, Apple won't scroll any MDI windows in the main QMdiArea, which is a terrible experience for newcomers to LMMS.) If you can locate a problem with the code, please point it out.

On a slightly unrelated note... how come your LMMS says 1.0.0 but your version information says 1.0.3?

-Tres

@Lx
Copy link
Author

Lx commented Oct 31, 2014

I initially prepared this bug report on Launchpad for Ubuntu using v1.0.0,
and was asked to test with a later version provided in an Ubuntu PPA. I've
experienced this behaviour across both versions. Your explanation
regarding QT aligns with that experience.

@tresf
Copy link
Member

tresf commented Oct 31, 2014

Looking at the source code, you can find a few examples of these strange bugs:
https://github.com/LMMS/lmms/blob/stable-1.1/src/gui/MainWindow.cpp#L880

And here's the Apple bug that was filed, where I've spent most of my time trying to understand the QMdiArea API:
#555

@tresf
Copy link
Member

tresf commented Oct 31, 2014

I just did some more testing... from what I can tell, this is reproducible, but it is extremely specific to the way the windows are open...

What I did to reproduce it:

  1. Open LMMS
  2. Maximize the Song Editor on the default blank template
  3. Open a project that was previously saved (via Project, Recently opened projects)
  4. When the project loads, it makes the default Song Editor window size incorrect (It's too small... one that does not make logical sense in terms of size)
  5. Maximize the Song Editor, bug occurs.
    image

Should be this:
image

Now do the same steps, but leave the Song Editor in a "restored" state before clicking on the recent project. The bug does not occur.

This leads me to believe the bug is related to the default "restore" behavior. Perhaps the loading of settings is in the wrong order (process the resize, then the restore, causing the resize to be forgotten).

Either way, it's a reproducible bug and probably can be fixed! :)

@tresf tresf added the bug label Oct 31, 2014
@tresf tresf added this to the 1.2.0 milestone Oct 31, 2014
@Lx
Copy link
Author

Lx commented Oct 31, 2014

Thanks for your detailed analysis and milestone indication. I regret not having been able to provide you with the discrete list of steps that you found to reproduce the issue.

One observation I left out earlier (and which probably isn't too important since you've done more analysis): although not all blocks are shown when maximising, the blocks that are shown are at least fully drawn—there are no "partially-drawn" blocks.

I don't know whether this helps to determine whether or not an underlying Qt bug is contributing to the issue (hopefully it isn't—I can definitely sympathise with you on the matter of third-party toolkit providers being unresponsive to bug reports related to their components).

@Sti2nd
Copy link
Contributor

Sti2nd commented Oct 31, 2014

Reproducible on windows, 1.0.93

@musikBear
Copy link

win32 xp 1.0.95
I can only replicate to the state of re-maximize
paste

As you can see, i do get a wrong max-size after loading the existing project, but thetre are no option for maximize (grayed out) I have to first minimize, and then maximize, the result is a maximized error free song-editor -@Sti2nd -You had different context-options? How did you re-maximize the already maximized SE?
This could be much more interesting, because it could be a hint for the pesty 'lost handle' bug, where forms are unreachable from the gui. I get this idea, because one of the way to 'push' the lost form back, is to mini/maximize lmms. #765 So maybe a 'useful' bug :p

@tresf
Copy link
Member

tresf commented Oct 31, 2014

@musikBear I'm about ready to buy you a copy of Windows 7. :)

@Sti2nd
Copy link
Contributor

Sti2nd commented Nov 1, 2014

What, @musikBear, context menu? I did not say how I reproduced it. Simply save your project with a small Song Editor window and open the project again. Then maximize the Song Editor window, tadaa.

@musikBear
Copy link

now 2 different ways to reproduce?
tresf says nothing about saving, and reopen nor anything about same project

Open LMMS
no shit sherlock 🐹 {joke :)
Maximize the Song Editor on the default blank template
empty new project maximized
Open a project that was previously saved (via Project, Recently opened projects)
any old project opend from "Recently.."
When the project loads, it makes the default Song Editor window size incorrect (It's too small... one that does not make logical sense in terms of size)
I have that too, as image shows
Maximize the Song Editor, bug occurs.
not possible, it is already maximized, as image shows

That is the procedure, and the result

@Sti2nd
Copy link
Contributor

Sti2nd commented Nov 1, 2014

No, @musikBear you are on the one side talking about another bug where the Song Editor window itself is not maximized properly, whereas Tres, Lx and I are talking about the stuff inside the Song Editor is not drawn when you maximize the Song Editor.
And yeah there is different ways to reproduce it. This bug happens because LMMS doesn't "send a draw signal" when the Song Editor is maximized, so only the instrument patterns drawn in the window when loading the project is displayed after maximizing. If you scroll or resize the window with the mouse "the signal is sent" and the drawing is happening.

@tresf
Copy link
Member

tresf commented Dec 23, 2014

Possibly fixed via #1490.

@tresf
Copy link
Member

tresf commented Jan 10, 2015

Closing per #1490. Please reopen if you feel this bug was closed in error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants