summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit 'upstream/4.6' into 4.6Bradley T. Hughes2009-12-0220-66/+156
|\
| * Merge commit 'oslo-staging-2/4.6' into upstream/4.6Olivier Goffart2009-12-0220-66/+156
| |\
| | * Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-12-021-2/+8
| | |\ | | | | | | | | | | | | 4.6-staging2
| | | * Clarify the docs a bit when setting focus.axis2009-12-011-2/+8
| | | | | | | | | | | | | | | | RevBy: Trust me
| | * | QWindowStyle: make sure there is no duplicate in the list of scrollbar.Olivier Goffart2009-12-011-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise the list grow and waste memory and CPU each time the stylesheet is changed or the widget is shown Reviewed-by: Thierry Task-number: QTBUG-6409
| | * | Fixed a potential crash in QDockWidgetThierry Bastian2009-12-011-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This happened when inserting the gap over a place holder item. Task-number: QTBUG-6107 Reviewed-by: Gabi
| | * | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6Gunnar Sletta2009-12-015-13/+87
| | |\ \
| | | * | Fix QFontCombobox autotest on X11Olivier Goffart2009-12-011-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On X11, Font might have a foundry within bracket. This foundry is set by the font combobox, and makes the font comparison fail. Make sure the other attributes (size, bold, ...) are preserved when the font is changed. Reviewed-by: Gabriel
| | | * | In QListViews, items were being hovered even when mouse was on the scrollbarsGabriel de Dietrich2009-12-011-2/+6
| | | |/ | | | | | | | | | | | | | | | | Reviewed-by: Olivier Task-number: QTBUG-6284
| | | * Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-12-013-8/+79
| | | |\ | | | | | | | | | | | | | | | 4.6-staging2
| | | | * Merge branch 'mmfphonon' into 4.6Gareth Stockwell2009-11-303-8/+79
| | | | |\
| | | | | * Symbian control invokes slots before and after native draw opsGareth Stockwell2009-11-263-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Direct Screen Access (DSA) allows a client to request notification from the window server when drawing is performed by other threads, into a specified region of the screen. This allows DSA rendering - for example video - to be suspended when notifications are drawn, preventing the video content from overwriting the notification. If the drawing originates from the same thread as that which holds the DSA session, DSA must be suspended while drawing takes place. This change allows a widget to request notification when native drawing is about to be performed by QSymbianControl::Draw. Task-number: QTBUG-5467 Reviewed-by: Jason Barron
| | | | | * Allow Symbian widget implementations to select native paint modeGareth Stockwell2009-11-263-8/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the Symbian platform, the Qt raster paint engine targets an off-screen buffer owned by the Font & Bitmap server (FBSERV). When an area of the screen needs to be refreshed, the window server (WSERV) asks the control environment (CONE) to redraw the control(s) intersecting that screen region. Each Qt native widget has an associated Symbian control, whose Draw function blits the required region of the backing store via WSERV. Use cases involving Direct Screen Access (DSA) may require this behaviour to be modified, to either of the following: - Disable: the Draw function does nothing. In this case, the output of paint events, rendered to the backing store, is not blitted to the screen. This mode was introduced by change 8f445e13. - Zero fill: the Draw function fills all pixels within the redraw region with zeroes. This change allows the widget implementation to select either of these alternative modes by setting a flag in its QWExtra structure. Note that these alternative modes are only suitable for native widgets, because they act on a per-control rather than per-widget basis. Task-number: QTBUG-5467 Reviewed-by: Jason Barron
| | * | | | Added caching of vectorpaths to the GL paint engine.Gunnar Sletta2009-12-012-6/+23
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The first time a path is drawn we call makeCachable on the path, which means that if it is drawn again, we start caching it. This is a bit of a trick to avoid caching paths that are drawn once and discared while at the same time cache paths that are reused automatically. The GL engine owns the vertex information and is responsible for cleaning it up. If the vectorpath is destroyed first, it will call the cleanup function. if the engine dies first, we still require some hooks to clean up the cache in the path. More to come. When VBO's are used, these will be a leaked if the path is destroyed after the engine. Reviewed-by: Samuel
| | * | | Fix crash in qt3support QPixmap constructorGunnar Sletta2009-12-011-2/+2
| | | | | | | | | | | | | | | | | | | | Reviewed-by: Trond
| | * | | Only call updateFont if the font have changed.Alexis Menard2009-11-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When receiving the polish event, we call updateFont only if the font has changed (from the QApplication::font()). This avoid to clear sizeHints cache. Task-number:QTBUG-6272 Reviewed-by:janarve
| | * | | Fixed square root of negative number in drawTextItem().Kim Motoyoshi Kalland2009-11-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed potential bug where you could end up taking the square root of a negative number in drawTextItem() in the raster and OpenGL paint engines. Task-number: QTBUG-6327 Reviewed-by: Trond
| | * | | Do not fill the disabled background of item.Olivier Goffart2009-11-301-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a regression against Qt 4.5 If one want special background for disabled item, one can use stylesheet, or BackgroundRole This partially revert 127e68d3dc4ff8329 Reviewed-by: jbache Task-number: QT-2388 Task-number: QTBUG-6319
| | * | | X11: Avoid loading all fonts in system for text with line breaksEskil Abrahamsen Blomfeldt2009-11-301-1/+1
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The line separator code point has no glyph in any font, something we would detect by running through a complete font merging loop and trying all fonts in the system on X11. This would cause the memory consumption to sky rocket the first time you added text with line breaks to an application, and it was an unnecessary performance hit. Now we special case the line separator and do no attempt to search for it in the fonts. Task-number: QTBUG-4537 Reviewed-by: Simon Hausmann
| | * | Merge commit 'upstream/4.6' into oslo-staging-2/4.6Olivier Goffart2009-11-278-100/+147
| | |\ \
| | * | | state wasn't being correctly reloaded on mac with unified toolbarThierry Bastian2009-11-271-2/+5
| | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-5932
| | * | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6Jan-Arve Sæther2009-11-275-32/+21
| | |\ \ \
| | | * | | Correctly export the horizontal part of a mixed alignment in text.Thomas Zander2009-11-271-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-5542 Reviewed-by: Trust-me We should not assume that the alignment only has a horizontal part so the export should take care to fish out the relevant bits from the flags only.
| | | * | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6Eskil Abrahamsen Blomfeldt2009-11-2714-93/+90
| | | |\ \ \
| | | | * | | Fixed a memory leak in the newer native filedialog on windowsThierry Bastian2009-11-271-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed-by: denis
| | | * | | | Fix QFontDialog::getFont on Mac OS X when using an invalid initial fontEskil Abrahamsen Blomfeldt2009-11-271-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you passed in a QFont with a family name that did not resolve to QFontDialog::getFont(), it would not select any font in the panel, and it would always return the default font, regardless of what you actually selected in the dialog. This was because it would try to resolve the requested family name, rather than the actual family name of the initial font. That in turn caused the NSFont* returned by the system to be null, which, when set on the font manager, caused the manager to always return 0 for selectedFont. Task-number: QTBUG-6071 Reviewed-by: Trond
| | * | | | | Merge branch 'fixes' of ↵Jan-Arve Sæther2009-11-271-21/+2
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://gitorious.org/~fleury/qt/fleury-openbossa-clone into fleury-fixes Conflicts: tests/auto/qgraphicsanchorlayout/tst_qgraphicsanchorlayout.cpp
| | | * | | | | QGAL: default spacing can be unset using a negative valueEduardo M. Fleury2009-11-251-21/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After a default spacing is set through QGAL::setSpacing() family of methods, the user must be able to unset it. To avoid adding another public method, we enabled this feature by allowing a negative value to be passed to those methods. Signed-off-by: Eduardo M. Fleury <eduardo.fleury@openbossa.org> Reviewed-by: Anselmo Lacerda S. de Melo <anselmo.melo@openbossa.org>
| | | * | | | | QGAL: sizeHint constraints needed by anchors parallel with the layoutEduardo M. Fleury2009-11-251-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The method "constraintsFromSizeHints" does not create constraints for anchors between the layout vertices _only if_ these anchors have infinite maximum sizes. However, this test was not being done for half-anchors, ie. those created when the layout center anchorage point is used. That was OK when there was no chance that the center anchors had been simplified by a parallel anchor. Nowadays there's a chance that happens, so the test was extended. Commit also adds a test to avoid regressions. Signed-off-by: Eduardo M. Fleury <eduardo.fleury@openbossa.org> Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
| | | * | | | | QGAL: deal correctly with anchors in parallel with the layoutCaio Marcelo de Oliveira Filho2009-11-252-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the preferred size calculation, we should not add 'layout anchors' (either one or the two halves) into the objective function, since the layout doesn't impose or prefer any size at all. This already worked for cases when the layout anchor is one, but not when we have two halves. The mechanism was a 'skipInPreferred' flag that were not being set. The flag is pretty much redundant right now, since we can get this information from the 'isLayoutAnchor' flag. So, the flag was removed and a test was added for both a parallel case with the entire layout and other with half of the layout (which wasn't passing before). Signed-off-by: Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org> Reviewed-by: Eduardo M. Fleury <eduardo.fleury@openbossa.org>
* | | | | | | | Creator crashes when reloading externally modified .ui files on MacPrasanth Ullattil2009-12-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Mac QWidget::destroy() sends an AcceptDropsChange event after clearing the guards for QPointer. This was used to store a QPointer to the widget being deleted & that will never be cleared. The fix removed the setAcceptDrops() from destroy. And as an extra protection make sure designer will not treat that event as interesting. Task-number: QTCREATORBUG-307 Reviewed-by: Denis Dzyubenko Reviewed-by: Friedemann Kleint
* | | | | | | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt into 4.6Simon Hausmann2009-11-301-1/+1
|\ \ \ \ \ \ \ \ | |/ / / / / / /
| * | | | | | | Fixed build on S60 and WinCEThorbjørn Lindeijer2009-11-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since qreal is a float on these targets, it was having trouble picking the right version of qMax.
* | | | | | | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt into 4.6Simon Hausmann2009-11-2923-417/+236
|\ \ \ \ \ \ \ \ | |/ / / / / / /
| * | | | | | | Merge remote branch 'staging/4.6' into 4.6Oswald Buddenhagen2009-11-272-32/+63
| |\ \ \ \ \ \ \ | | |_|_|_|_|/ / | |/| | | | | |
| | * | | | | | Improved and optimized the WaveUnderlineThorbjørn Lindeijer2009-11-262-32/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The WaveUnderline used to be a series of 180 degree arcs, that didn't always align very well between different text items and that could be clipped at the bottom since the font height got reduced. Now it uses quad beziers so that it is more like a sinus curve, and the alignment and clipping issues have been fixed. The painting of the WaveUnderline has been optimized using QPixmapCache. A 100 pixels wide sample of the wave is now cached as a pixmap and repeated to draw the WaveUnderline. This is an order of magnitude faster than rasterizing a QPainterPath. The QPlainTextEdit needs to set the brush origin since it draws the text items in local widget coordinates, rather than relying on a painter translation like the QTextEdit. Done with mae.
| * | | | | | | Merge commit oslo-staging-2/4.6 into upstream/4.6Olivier Goffart2009-11-2721-385/+173
| |\ \ \ \ \ \ \ | | | |_|_|_|/ / | | |/| | | | |
| | * | | | | | Fixed memory leak in QImagePixmapCleanupHooks.Kim Motoyoshi Kalland2009-11-272-23/+8
| | | |/ / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QImagePixmapCleanupHooks instance was never deleted. Fixed by making it a Q_GLOBAL_STATIC. Task-number: QTBUG-6116 Reviewed-by: Trond
| | * | | | | Fix compilation on Windows CEEskil Abrahamsen Blomfeldt2009-11-272-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 6ef5b4485b9fe5a9d25d2d9b5e67f110fb728a8b broke compilation on Windows CE by moving code out from a #ifndef Q_WS_WINCE block. Reviewed-by: Rohan McGovern
| | * | | | | QSortProxyModel: Crash when changing model with 2-level proxy and selected itemsGabriel de Dietrich2009-11-261-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The index mapping to the base model was being cleared before the persistant model indices. Reviewed-by: Olivier Task-number: QTBUG-6237
| | * | | | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-11-267-67/+68
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 4.6-staging2
| | | * | | | | Fixed context menu placement partially outside screen bug in Symbian.Janne Anttila2009-11-261-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In style demo example when spinbox was long tapped, the context menu was placed partially outside screen. The preconditions for bug were: 1. Tap position is near screen right edge 2. Minimum space width requested by context menu is > sreen width The new (simplified) logic is as follows: 1. If menus right edge in requested position is outside screen right edge, the menu is moved to left enough to fit on screen. i.e. if (tap position + menu width > screen right ) x = screen right - menu width 2. As a result of above statement the x position might go outside left boundary of screen. This is fixed by next statements if( x < screen left ) x = screen left Task-number: QTBUG-6164 Reviewed-by: Alessandro Portale
| | | * | | | | Tidyup QS60Style - remove unused constants, replace magic valuesSami Merilä2009-11-262-12/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Basically this has three minor fixes: - remove unused style parts that were left over after unifying textEdit and lineEdit graphics - make radiobutton indicator one pixel smaller so it is perfect circle - replace magic "10" with calculated value Reviewed-by: Alessandro Portale
| | | * | | | | Background in landscape mode on S60 5.0 is brokenSami Merilä2009-11-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After initial fix, 99% of widgets draw temselves properly after orientation switch. However, QScrollAreas lose their palette hash, which causes scrollarea background to re-start from theme background top-left. As a correction, we re-set the theme palette hash after calling QApplication::setPalette, since that clears palette hash. Task-number: QTBUG-6125 Reviewed-by: Alessandro Portale
| | | * | | | | Remove some white-space from QS60StyleSami Merilä2009-11-261-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove some white space from QS60Style classes. Reviewed-by: TrustMe
| | | * | | | | Fixing background painting after orientation switch.Alessandro Portale2009-11-252-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixing previous fixes of QS60StylePrivate::setBackgroundTexture with commit SHAs a80e58335e69c8ce96d1596e0ed2d14e424a0d5e and d4089399a3ab7548a864d5a399e08df85c444783 Now, the palette gets the updated background brush and the palette is actually set as application palette. Also making sure that QS60StylePrivate::handleDynamicLayoutVariantSwitch does the right things in the right order. So that Table headers are not broken after orientaion switch. Task-number: QTBUG-6125 Task-number: QT-1478
| | | * | | | | Micro optimizationAlessandro Portale2009-11-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't request a palette if you do not use it. Reviewed-By: Trustme
| | | * | | | | Fixed context menu not to have "Options" action.Janne Anttila2009-11-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When calling QMainWindow::setMenuBar(), menuBarAction ("Options") gets added to widget actions list. This actions will be shown in widget context menu if visible. That's why we set the action invisible. Visibility property does not have impact to softkey contruction, i.e. also invisble softkeys are added. Task-number: QTBUG-6220 Reviewed-by: Jason Barron
| | | * | | | | Fixes for tab/space usage in qwidget.cpp.Janne Anttila2009-11-251-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed-by: TrustMe
| | | * | | | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.6Janne Koskinen2009-11-253-28/+35
| | | |\ \ \ \ \