summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Remove duplicate defines in the mac accessibility module.Morten Sørvig2009-04-141-122/+0
| | | | | | This was causing compile warnings. Reviewed-by: nrc
* BT: Compilefix for Windows CE and namespacesThomas Hartmann2009-04-081-4/+6
| | | | | | RevBy: Mauricek Details: functions needs to be declared outside of the namespace
* Merge branch '4.5' of http://git.scm.dev.nokia.troll.no/qt/qt into 4.5Thomas Hartmann2009-04-081-0/+4
|\
| * BT: Fix a painting glitch in gtk combo boxJens Bache-Wiig2009-04-081-0/+4
| | | | | | | | | | | | | | This improves the look of combo box with gtk style which is somewhat a regression from 4.5.0 since we did not style this part before. Reviewed-by: nrc
* | Fixes: No navigation with alt for the native menubar (Windows CE)Thomas Hartmann2009-04-081-0/+3
|/ | | | | | RevBy: Mauricek AutoTest: tst_QMenuBar::check_altPress() Details: We do not allow alt navigation with the windows mobile style
* BT: Fix up comments in new Cocoa files.Norwegian Rock Cat2009-04-089-119/+163
| | | | | | It seems that Vim or Xcode or whatever I was using to paste these in messed up and added an extra space. Now we should be consistent with the .cpp files and I found a file that we missed too.
* BT: Fix infinite recursion potential from change acff913a6287ad50b0ac782Norwegian Rock Cat2009-04-081-4/+5
| | | | | | | | It seems there is a potential for recursion because calling keyDown: can bubble up to the window which will start the process all over again. keyDown: will actually call qt_dispatchKeyEvent(), we may as well short it out here. All the previous cases I tried continue to work and we don't crash Creator if you are really impatient hitting keys.
* Revert "Bt: Fix regression in the Embedded dialogs example"Andreas Aardal Hanssen2009-04-081-13/+11
| | | | | | | | | | | | | | | | | This reverts commit 35c26d696cbff269d551c012a212c09692dd6f6b. The change to QComboBox introduces a behavior change; whereas before the view container would always get its palette set as a response to QEvent::PaletteChange, it would now miss this event and rely on regular palette propagation to get the right contens. The difference in behavior is that QWidget::setPalette() also resolves the palette mask, and after 35c26d69 this would no longer happen. The bug in the embedded dialogs demo is caused by the embedded dialogs demo. See upcoming commit. Reviewed-by: Alexis Reviewed-by: Jens Bache-Wiig <jbache@trolltech.com>
* Bt: Fix regression in the Embedded dialogs exampleJens Bache-Wiig2009-04-071-11/+13
| | | | | | | | | | We had to revert an earlier fix since it obviously did not work correctly. However since we do not really need to propagate the palette on the viewContainer _before_ it is created, we can simply avoid the issue alltogether as it would happen because we implicitly added a child widget during the polish of the combo box. Reviewed-by: nrc
* BT: Prevent a crash in Designer when quiting when in the filter edit.Norwegian Rock Cat2009-04-072-3/+6
| | | | | | | | | | | | | Gah, my original change (f5ef0eb1a6543abdd29e07c23de7fa1128f6d623) had its heart in the right place, but it seems that it can cause crashes on closing where we refuse to give up the first responder and we end up with a dangling pointer. This lets that case happen (when we have no focus widget and are setting a nil first responder, there's no reason to stop that, but it refuses to do that when we do have a focus widget. Hopefully we don't get in a situation where our focus widget gets out of sync. Reviewed-by: Prasanth Ullattil
* fix tap-and-hold checkbox problem for Windows CEJoerg Bornemann2009-04-073-12/+11
| | | | | | | | | | | | | | Symptom: checkboxes didn't get checked if you press, hold for some seconds and then release the mouse or stylus. In QAbstractButton we reacted on the contextMenuEvent that gets sent if the system recognizes the context menu gesture (tap and hold) and did call setDown(false). This change has been done because buttons in tool bars stayed in the down state when displaying the context menu with this gesture. I've now moved the handling of this to qtoolbar.cpp. Task-number: 246619 Reviewed-by: thartman
* Merge branch '4.5' of git@scm.dev-nokia.troll.no:qt/qt into 4.5Thomas Hartmann2009-04-074-36/+42
|\
| * Drag cursor is not updated when modifier keys are pressed/released inPrasanth Ullattil2009-04-072-2/+6
| | | | | | | | | | | | | | | | | | the Cocoa Builds. The drag move events were compressed based only on the position of the cursor. It has to be based on both position and the "drag operation" in native event. Reviewed-by: nrc
| * BT: QFileDialog: A folder with a name containing diacritic is disabled on ↵Richard Moe Gustavsen2009-04-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Mac OS X - cocoa The filename as NSString that we get from Cocoa does not have the correct file system encoding. This means that certain characters are implemented differently than what e.g. QFile::encoded returns. This fix normalizes the string from cocoa before using it. Task-number: 249928 Reviewed-by: Trenton Schulz
| * BT: Send the keyevent after we send the shortcutoverride in menuNorwegian Rock Cat2009-04-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In our Cocoa menu we check if we need to send the key event to the qwidget before the menu has a chance at it, because logically in Qt, the key event should go to the widget and not the menubar first (a bit different than what happens on the mac). The way to determine this is to send a shortcut override event and see if it accepts it. If it does, that means we should just send it the key event. Previously we were sending the shortcut override, but not following through on the key event because we thought (however foolishly). That returning "YES" but not setting an action would somehow forward the event (it doesn't). There still seems to be some problems if you have a Dvorak-QWERTY+CWD layout, but this probably needs to be dealt with at the key mapper level. Reviewed-by: Prasanth Ullattil
| * Adjust commentsNorwegian Rock Cat2009-04-071-33/+34
| | | | | | | | Someone messed up the whitespace on this comment.
* | BT: compilefix for Qt in namespaceThomas Hartmann2009-04-071-3/+3
|/ | | | | | RevBy: mauricek Details: using prefix qt_ instead of ::global namespace
* Fixes missing hover on QListView in VistaJens Bache-Wiig2009-04-072-0/+4
| | | | | | | | | We did not enable hover on list view item views. This is inconsistent with how QTreeView works as well as different from how native icon views behave. Reviewed-by: Prasanth Ullattil Task number: 242519
* BT: Compile without QT3SUPPORTJens Bache-Wiig2009-04-071-1/+1
| | | | Reviewed-by: ogoffart
* Compile.Norwegian Rock Cat2009-04-071-1/+1
| | | | | | Looks like a typo. Reviewed-by: Bradley T. Hughes
* BT: Fix regression when tooltips dissappear suddenly in Unified toolbarNorwegian Rock Cat2009-04-073-2/+37
| | | | | | | | | | | | | | | | | | | QWidget::childAt() makes some assumptions about its children (they are all contained in its geometry). This does not hold up when using the unified toolbar because the toolbar ends up in the "non-client" area. So, when dispatching an enter/leave event in tooltip show, we end up dispatching to the wrong widgets and that results in the tooltip cleverly thinking that it needs to hide itself because we've left the widget that needs the tooltip. I've special cased this by just having a "native" mapFromParent() that is only called for on the mac, though there is nothing that is limiting this from being called on other platfroms. Also QWidget::mapFromParent() probably needs to be looked at at some point. Task-number: 248048 Reviewed-by: Richard Moe Gustavsen
* Adds a few \warnings to the docs on do-not-use-for-performance-reasonsGunnar Sletta2009-04-074-5/+43
| | | | Reviewed-by: Trond
* Fixes: Calling repaint() during a top-level resizeGunnar Sletta2009-04-071-10/+14
| | | | | | | | | RevBy: bnilsen Task: 249394 Details: When going through the backingstore a repaint in a toplevel resize should just discard the repaint() as it will repaint shortly after anyway. This is in line with the implementation of update().
* Fixes: Make drawPixmap as fast as drawImage on rasterRGunnar Sletta2009-04-072-34/+68
| | | | | | RevBy: Samuel Details: The IMAGE_FROM_PIXMAP has to be doing a local copy or something, because it is sure not fast...
* Fixes: Make drawPixmap slightly more optimal for QPaintEngineExGunnar Sletta2009-04-071-3/+6
| | | | RevBy: Samuel
* BT: Fixed treeview painting regression on VistaJens Bache-Wiig2009-04-061-6/+14
| | | | | | | | | | | The old code did not split up the frame from the central parts of the itemview selection box correctly. We now draw the edges as border images instead. Previously this would lead to somewhat ugly scaling artifacts for small header sections. Task: 248839 Reviewed-by: ogoffart
* BT: Fix combobox background color regressionJens Bache-Wiig2009-04-062-9/+5
| | | | | | | | | There was a regression in the background color for QComboBox popups. This should resolve it. It essentially tells the system to stay off the system palette while QGtkStyle is used. We will introduce a cleaner style hint for this in 4.6. Reviewed-by: nrc
* Fixup update rect regression by adjusting expose rectangles.Andreas Aardal Hanssen2009-04-061-8/+34
| | | | | | | | | | | | | | | | | | | | | | | This change shows a limitation in Graphics View caused by QPen's default width being 0 (cosmetic), while Graphics View actually does not support cosmetic pens at all. Because items are at risk of drawing lines that poke 1 pixel outside their bounding rect, QGraphicsView must look for items that are up to one pixel larger than their bounding rect mapped to viewport coordinates. Furthermore, mapToScene(QRect) forces us to adjust the input rectangle by (0, 0, 1, 1), because it uses QRect::bottomRight() (etc) when mapping the rectangle to a polygon (which is _wrong_). Since this behavior has been there since 4.2, we don't want to fix it in a 4.5 patch release... The only _proper_ fix to this problem is for the view to know the item's "adjust" in device coordinates, allowing items to use cosmetic pens freely. Fex, we could introduce QGraphicsItem::viewportMargins() or so. Added an autotest to ensure this doesn't break again. Reviewed-by: bnilsen
* Fixes: Wrong adjustment of rect added in ↵Bjoern Erik Nilsen2009-04-061-3/+2
| | | | | | | | | | 0aa2ef27249dc8e782c2942340776bb19de80a0d RevBy: TrustMe AutoTest: tst_QGraphicsItem::boundingRegion() pass again Details: The original code adjusted the QRect version of a mapped bounding rect, wheras my patch adjusted a mapped bounding rect (QRectF) and then converted it to a QRect.
* Fixes: We have to adjust the item's bounding rect.Bjoern Erik Nilsen2009-04-061-2/+16
| | | | | | | | RevBy: Andreas AutoTest: Still pass Details: QRectF::intersects does not work with flat rectangles, so we cannot intersect the bounding rect without adjusting it first.
* Fixes: Optimize the way we adjust rectangles.Bjoern Erik Nilsen2009-04-062-47/+68
| | | | | RevBy: Olivier AutoTest: Still pass
* Fixes: Partially revert 9b0af2395c84a6895a5ce6368f151d4ec00c8755Bjoern Erik Nilsen2009-04-061-2/+2
| | | | | | | | | | RevBy: Andreas AutoTest: tst_QGraphicsView::itemAt2 pass again Details: A QPoint in the view has to be mapped to a pixel in the scene, otherwise it won't be possible to e.g. click on items that are smaller than a pixel. So...we have to optimize the hit-testing code in another way
* Fixes: Minimize QVariant overhead related to QGraphicsItem::itemChange.Bjoern Erik Nilsen2009-04-062-43/+51
| | | | | RevBy: Andreas AutoTest: included
* Optimise QPainterPath::contains(QPointF)Lars Knoll2009-04-061-1/+1
| | | | | | We can shortcut quite some calculations for the common case by first checking whether the point is contained in the control point rect.
* Optimise QGraphicsScene/View::items(const QPointF &pos)Lars Knoll2009-04-063-14/+88
| | | | | Implement specialized (and more efficient versions) of item_helper() and child_helper() that test for QPointF in the scene.
* Fixes: Simplify the cut-offs and be more agressive :-)Bjoern Erik Nilsen2009-04-063-42/+68
| | | | | AutoTest: Still pass. Details: It's easier to read and understand the code now.
* Fixes: Discard update requests if possible.Bjoern Erik Nilsen2009-04-062-10/+35
| | | | | | | | AutoTest: Still pass. Details: Update requests can be discarded if the item itself is clipped away and the item clips all its children to shape. This cut-off is extremely effective (and aggressive:))
* Fixes: Don't bother updating hidden items.Bjoern Erik Nilsen2009-04-062-1/+4
| | | | AutoTest: Still pass
* Fixes: Do not update children if not required.Bjoern Erik Nilsen2009-04-061-1/+2
| | | | AutoTest: Still pass
* Fixes: Don't check the force boolean.Bjoern Erik Nilsen2009-04-061-1/+1
| | | | Details: It's clipped away regardless.
* Fixes: Minimize QVariant constr/destr in setPosHelper.Bjoern Erik Nilsen2009-04-061-2/+3
| | | | RevBy: TrustMe
* Fixes: Optimize QGraphicsViewPrivate::itemUpdated.Bjoern Erik Nilsen2009-04-061-21/+19
| | | | | | | AutoTest: Still pass Details: Get rid of QTransform::inverted()/operator*= and do nothing if the item clips all its children and the update rect is outside the bounding rect.
* Fixes: Discard update requests if possible.Bjoern Erik Nilsen2009-04-063-21/+44
| | | | | | | | AutoTest: Still pass. Details: Update requests can be discarded if the item itself is clipped away and the item clips all its children to shape. This cut-off is extremely effective (and aggressive:))
* Fixes: Don't bother processing items that are clipped away.Bjoern Erik Nilsen2009-04-062-52/+67
| | | | RevBy: Andreas
* Fixes: Optimization: Clip path is empty if the bounding rect is empty.Bjoern Erik Nilsen2009-04-061-1/+10
| | | | RevBy: TrustMe
* Fixes: Clever invalidating of the cached clip path.Bjoern Erik Nilsen2009-04-062-13/+129
| | | | | | | | RevBy: Andreas AutoTest: still pass Details: Adds emptyClipPath bit, a cut-off to test if the item has an empty clip path (i.e., is clipped away). Also adds code for invalidating the cache from inside setPos().
* Fixes: Compile on funky scratchbox ARM compiler.Bjoern Erik Nilsen2009-04-061-1/+1
|
* Fixes: Get rid of lots of calls to qFuzzyCompare.Bjoern Erik Nilsen2009-04-062-3/+9
| | | | | | | RevBy: Olivier AutoTest: Still pass. Details: Items usually don't have effective opacity, i.e. it is 1.0, so don't bother doing fuzzy compare if that's the case.
* Fixes: Only use the parent's cached clip path if it is clipped.Bjoern Erik Nilsen2009-04-061-2/+3
| | | | | RevBy: TrustMe Details: ...otherwise it'll be empty and too much will be clipped away.
* Add a cut-off for simple rectangle lookups.Andreas Aardal Hanssen2009-04-061-0/+5
| | | | | | | | Make sure we use the rect-variation of QGraphicsScene's item lookup functions if the view has a simple transform and a simple expose region. Reviewed-by: Bjoern Erik Nilsen <bjorn.nilsen@nokia.com>