Bug 329831

Summary: starting umbrello does not display any window
Product: [Applications] umbrello Reporter: Nicolas Pavillon <nicos>
Component: generalAssignee: Umbrello Development Group <umbrello-devel>
Status: RESOLVED FIXED    
Severity: normal CC: celak.pande, okellogg, ralf.habacker
Priority: NOR    
Version: 2.11.5   
Target Milestone: ---   
Platform: MacPorts   
OS: macOS   
Latest Commit: Version Fixed In: 4.12.3
Sentry Crash Report:

Description Nicolas Pavillon 2014-01-11 04:50:25 UTC
When starting umbrello, no window appears, even when trying to open a new one through the menu. The program outputs the following warnings:
umbrello(9216)/kdeui (kdelibs): Attempt to use QAction "edit_undo" with KXMLGUIFactory! 
umbrello(9216)/kdeui (kdelibs): Attempt to use QAction "edit_redo" with KXMLGUIFactory! 
umbrello(9216) *UMLListView::findView: could not find  "class diagram"  in  UMLListViewItem: "Logical View", type="lvt_Logical_View", id="Logical View", children=1 
umbrello(9216) *UMLListView::findView: could not find  "class diagram"  in  UMLListViewItem: "Logical View", type="lvt_Logical_View", id="Logical View", children=1 

Trying to open a new window with the "File -> New..." menu outputs again the two last lines of the output (could not find "class diagram")

Reproducible: Always

Steps to Reproduce:
1. Start umbrello
2. Select "File -> New..."
Actual Results:  
No window appears

Expected Results:  
A new window should appear

Umbrello is built from source under KDE 4.11.5, with the following dependencies:
  boost 1.55.0
  libxml2 2.9.1
  libxslt 1.1.28
Comment 1 Oliver Kellogg 2014-01-11 17:03:16 UTC
Have you tried moving $HOME/.kde4/share/config/umbrellorc out of the way?
(see http://forum.kde.org/viewtopic.php?f=22&t=38672)
Comment 2 Nicolas Pavillon 2014-01-12 02:41:27 UTC
Yes. Unfortunately, this does not change anything to the described behaviour.
Comment 3 Edy Santosa Putra 2014-01-20 05:22:23 UTC
I am also affected by this bug on Archlinux
Linux 
Qt: 4.8.5
KDE Development Platform: 4.12.1
Umbrello UML Modeller: 2.12.1
Comment 4 Edy Santosa Putra 2014-01-23 13:40:32 UTC
This would probably solves this problem, apparently umbrello main window started with 0 width and height. So I added this parameter in umbrellorc

[General Options]
Geometry=800,600

https://bbs.archlinux.org/viewtopic.php?pid=1369652
Comment 5 Nicolas Pavillon 2014-01-23 16:22:49 UTC
Great, I can confirm that changing these settings also solve the issue for me. To my understanding, the function:
UmbrelloSettings::geometry() 
returns (-1, -1) as a size if no proper umbrellorc is present, and the values are returned/used without being checked.
Comment 6 Ralf Habacker 2014-01-27 15:00:32 UTC
(In reply to comment #5)
> Great, I can confirm that changing these settings also solve the issue for
> me. To my understanding, the function:
> UmbrelloSettings::geometry() 
> returns (-1, -1) as a size if no proper umbrellorc is present, and the
> values are returned/used without being checked.
According to https://qt-project.org/doc/qt-4.8/qwidget.html#minimumSize-prop are these values checked against minimumSize(). On my development machine minimumSize() returns QSize(0, 0), before the call to resize() , which means resize will set the size to (0,0). 
The mentioned documentation says about this case: 
"Note: Setting the size to QSize(0, 0) will cause the widget to not appear on screen. This also applies to windows."
Comment 7 Oliver Kellogg 2014-01-27 22:01:27 UTC
(In reply to comment #5)
> Great, I can confirm that changing these settings also solve the issue for
> me. To my understanding, the function:
> UmbrelloSettings::geometry() 
> returns (-1, -1) as a size if no proper umbrellorc is present, and the
> values are returned/used without being checked.

Looking at the code, it seems the values are really being used without being checked. See UMLApp::readOptions() in umbrello/uml.cpp:1022
    resize(UmbrelloSettings::geometry());

When UmbrelloSettings::geometry() returns unexpected values such as (0,0) we should perhaps fall back to some sensible values?
Comment 8 Ralf Habacker 2014-01-30 14:01:36 UTC
Git commit c6640aa458af39b1a31fb04ae6de26f0084f7758 by Ralf Habacker.
Committed on 30/01/2014 at 14:00.
Pushed by habacker into branch 'master'.

Fix of 'starting umbrello does not display any window'.

M  +5    -1    umbrello/uml.cpp

http://commits.kde.org/umbrello/c6640aa458af39b1a31fb04ae6de26f0084f7758
Comment 9 Ralf Habacker 2014-01-30 14:37:23 UTC
Git commit 9a14648f65fe58d9b7230b5ce16d55827d0b88ce by Ralf Habacker.
Committed on 30/01/2014 at 14:00.
Pushed by habacker into branch 'KDE/4.12'.

Fix of 'starting umbrello does not display any window'.
FIXED-IN:4.12.3
(cherry picked from commit c6640aa458af39b1a31fb04ae6de26f0084f7758)

M  +5    -1    umbrello/uml.cpp

http://commits.kde.org/umbrello/9a14648f65fe58d9b7230b5ce16d55827d0b88ce