| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Reviewed-by: Jesper
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change ensures that only active scenes can have active input
focus items. If you try to set input focus on items that are in an
inactive scene, these items will gain input focus only when the scene
is activated.
For scenes attached to a view, this change should only fix the bug that
you could have a blinking line edit in a scene when the view is inactive,
meaning you couldn't type into the line edit.
For scenes that have no view, you now must activate the scene in order
to give the items active input focus. This will affect those who use
QGraphicsScene with custom key and focus handling.
Reviewed-by: brad
|
|
|
|
|
|
|
|
| |
It fails on some platforms because of a bug in the autotest.
There might be more platforms also, but these are the ones
that currently report the problem.
Reviewed-by: paul
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
|
|
|
|
|
| |
Note that the constraint is only enforced when resizing the window
interactively. Calling setGeometry() will not try to enforce the
constraint.
See the graphicsview/flowlayout example for a "manual test".
Task-number: 257455
|
|
|
|
|
|
|
|
| |
The new recursive scene rendering does not call
GraphicsScene::drawItems. Enabling the IndirectPainting optimization flag
reverts to the old behaviour.
Reviewed-by: ogoffart
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If you show a child panel of an active panel, the child will now be
activated and the parent deactivated. Hiding the child panel will
reactive the parent. If the parent is 0, no other panel is activated.
Reparenting a panel onto an active panel will also activate the (new)
child. Reparenting away does not affect activation in any way.
This change also fixes QGraphicsWidget::isActiveWindow(), which returned
true for all toplevel widgets (not in a panel/window). This is wrong;
either the non-panel items are active, or a panel is active. The
correct behavior is the same as calling QGraphicsItem::isActive(). Fixed
the autotests (which wrongly tested that both a panel and a non-panel
item were active at the same time).
This change causes popups (QGraphics{Proxy,}Widget) to deactivate the
parent widget. On the positive side this activates the popup, and ensures
that the parent regains proper focus when the popup is closed. However
it also means the parent widget is inactive while the popup is open,
which (e.g.) causes editable combobox line edit cursors to stop blinking.
This is to be fixed soon, but the fix is a bit big so we'll do that later.
Autotests included.
Reviewed-by: Brad
|
|
|
|
|
|
|
| |
Oftentimes and depending on your window manager, QTest::mouseClick is not
enough to set the focus on a widget. QTest::mouseMove to that widget first.
Reviewed-by: ogoffart
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
demos/boxes/glshaders.cpp
demos/boxes/vector.h
demos/embedded/fluidlauncher/pictureflow.cpp
demos/embedded/fluidlauncher/pictureflow.h
doc/src/desktop-integration.qdoc
doc/src/distributingqt.qdoc
doc/src/examples-overview.qdoc
doc/src/examples.qdoc
doc/src/frameworks-technologies/dbus-adaptors.qdoc
doc/src/geometry.qdoc
doc/src/groups.qdoc
doc/src/objecttrees.qdoc
doc/src/platform-notes.qdoc
doc/src/plugins-howto.qdoc
doc/src/qt3support.qdoc
doc/src/qtdbus.qdoc
doc/src/qtdesigner.qdoc
doc/src/qtgui.qdoc
doc/src/qtmain.qdoc
doc/src/qtopengl.qdoc
doc/src/qtsvg.qdoc
doc/src/qtuiloader.qdoc
doc/src/qundo.qdoc
doc/src/richtext.qdoc
doc/src/topics.qdoc
src/corelib/tools/qdumper.cpp
src/gui/embedded/qkbdpc101_qws.cpp
src/gui/embedded/qkbdsl5000_qws.cpp
src/gui/embedded/qkbdusb_qws.cpp
src/gui/embedded/qkbdvr41xx_qws.cpp
src/gui/embedded/qkbdyopy_qws.cpp
src/gui/embedded/qmousebus_qws.cpp
src/gui/embedded/qmousevr41xx_qws.cpp
src/gui/embedded/qmouseyopy_qws.cpp
src/gui/painting/qpaintengine_d3d.cpp
src/gui/painting/qwindowsurface_d3d.cpp
src/opengl/gl2paintengineex/glgc_shader_source.h
src/opengl/gl2paintengineex/qglpexshadermanager.cpp
src/opengl/gl2paintengineex/qglpexshadermanager_p.h
src/opengl/gl2paintengineex/qglshader.cpp
src/opengl/gl2paintengineex/qglshader_p.h
src/opengl/util/fragmentprograms_p.h
src/plugins/kbddrivers/linuxis/linuxiskbdhandler.cpp
src/plugins/mousedrivers/linuxis/linuxismousehandler.cpp
src/script/parser/qscript.g
src/script/qscriptarray_p.h
src/script/qscriptasm_p.h
src/script/qscriptbuffer_p.h
src/script/qscriptclass.cpp
src/script/qscriptclassdata_p.h
src/script/qscriptcompiler.cpp
src/script/qscriptcompiler_p.h
src/script/qscriptcontext.cpp
src/script/qscriptcontext_p.cpp
src/script/qscriptcontext_p.h
src/script/qscriptcontextfwd_p.h
src/script/qscriptecmaarray.cpp
src/script/qscriptecmaarray_p.h
src/script/qscriptecmaboolean.cpp
src/script/qscriptecmacore.cpp
src/script/qscriptecmadate.cpp
src/script/qscriptecmadate_p.h
src/script/qscriptecmaerror.cpp
src/script/qscriptecmaerror_p.h
src/script/qscriptecmafunction.cpp
src/script/qscriptecmafunction_p.h
src/script/qscriptecmaglobal.cpp
src/script/qscriptecmaglobal_p.h
src/script/qscriptecmamath.cpp
src/script/qscriptecmamath_p.h
src/script/qscriptecmanumber.cpp
src/script/qscriptecmanumber_p.h
src/script/qscriptecmaobject.cpp
src/script/qscriptecmaobject_p.h
src/script/qscriptecmaregexp.cpp
src/script/qscriptecmaregexp_p.h
src/script/qscriptecmastring.cpp
src/script/qscriptecmastring_p.h
src/script/qscriptengine.cpp
src/script/qscriptengine_p.cpp
src/script/qscriptengine_p.h
src/script/qscriptenginefwd_p.h
src/script/qscriptextenumeration.cpp
src/script/qscriptextenumeration_p.h
src/script/qscriptextqobject.cpp
src/script/qscriptextqobject_p.h
src/script/qscriptextvariant.cpp
src/script/qscriptfunction.cpp
src/script/qscriptfunction_p.h
src/script/qscriptgc_p.h
src/script/qscriptmember_p.h
src/script/qscriptobject_p.h
src/script/qscriptprettypretty.cpp
src/script/qscriptprettypretty_p.h
src/script/qscriptvalue.cpp
src/script/qscriptvalueimpl.cpp
src/script/qscriptvalueimpl_p.h
src/script/qscriptvalueimplfwd_p.h
src/script/qscriptvalueiteratorimpl.cpp
src/script/qscriptxmlgenerator.cpp
src/script/qscriptxmlgenerator_p.h
tests/auto/linguist/lupdate/testdata/recursivescan/project.ui
tests/auto/linguist/lupdate/testdata/recursivescan/sub/finddialog.cpp
tests/auto/qkeyevent/tst_qkeyevent.cpp
tools/linguist/shared/cpp.cpp
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
bin/syncqt
configure
demos/boxes/glshaders.cpp
demos/boxes/vector.h
demos/embedded/fluidlauncher/pictureflow.cpp
demos/embedded/fluidlauncher/pictureflow.h
dist/README
dist/changes-3.0.0
dist/changes-3.0.0-beta1
dist/changes-4.3.0
doc/src/desktop-integration.qdoc
doc/src/development/designer-manual.qdoc
doc/src/distributingqt.qdoc
doc/src/examples-overview.qdoc
doc/src/examples.qdoc
doc/src/frameworks-technologies/dbus-adaptors.qdoc
doc/src/geometry.qdoc
doc/src/groups.qdoc
doc/src/index.qdoc
doc/src/objecttrees.qdoc
doc/src/platform-notes.qdoc
doc/src/plugins-howto.qdoc
doc/src/porting/porting4.qdoc
doc/src/porting4-obsoletedmechanism.qdocinc
doc/src/qt-webpages.qdoc
doc/src/qt3support.qdoc
doc/src/qtdbus.qdoc
doc/src/qtdesigner.qdoc
doc/src/qtgui.qdoc
doc/src/qtmain.qdoc
doc/src/qtopengl.qdoc
doc/src/qtsvg.qdoc
doc/src/qtuiloader.qdoc
doc/src/qundo.qdoc
doc/src/richtext.qdoc
doc/src/snippets/code/src_corelib_tools_qregexp.cpp
doc/src/snippets/code/src_qt3support_network_q3ftp.cpp
doc/src/snippets/qstring/main.cpp
doc/src/snippets/textdocument-blocks/xmlwriter.cpp
doc/src/snippets/textdocument-frames/xmlwriter.cpp
doc/src/snippets/textdocument-tables/xmlwriter.cpp
doc/src/tech-preview/known-issues.html
doc/src/topics.qdoc
doc/src/xml-processing/xml-processing.qdoc
examples/xml/saxbookmarks/jennifer.xbel
src/3rdparty/phonon/ds9/mediaobject.cpp
src/3rdparty/phonon/ds9/mediaobject.h
src/corelib/io/qurl.cpp
src/corelib/tools/qdumper.cpp
src/corelib/xml/qxmlstream.h
src/gui/embedded/qkbdpc101_qws.cpp
src/gui/embedded/qkbdsl5000_qws.cpp
src/gui/embedded/qkbdusb_qws.cpp
src/gui/embedded/qkbdvr41xx_qws.cpp
src/gui/embedded/qkbdyopy_qws.cpp
src/gui/embedded/qmousebus_qws.cpp
src/gui/embedded/qmousevr41xx_qws.cpp
src/gui/embedded/qmouseyopy_qws.cpp
src/gui/image/qpixmapcache.cpp
src/gui/kernel/qmotifdnd_x11.cpp
src/gui/painting/qpaintengine_d3d.cpp
src/gui/painting/qpaintengine_raster.cpp
src/gui/painting/qwindowsurface_d3d.cpp
src/gui/styles/qmacstyle_mac.mm
src/gui/text/qtextformat.cpp
src/gui/text/qtextobject_p.h
src/network/access/qhttp.cpp
src/opengl/gl2paintengineex/glgc_shader_source.h
src/opengl/gl2paintengineex/qglpexshadermanager.cpp
src/opengl/gl2paintengineex/qglpexshadermanager_p.h
src/opengl/gl2paintengineex/qglshader.cpp
src/opengl/gl2paintengineex/qglshader_p.h
src/plugins/codecs/kr/qeuckrcodec.cpp
src/plugins/kbddrivers/linuxis/linuxiskbdhandler.cpp
src/plugins/mousedrivers/linuxis/linuxismousehandler.cpp
src/qt3support/network/q3http.cpp
src/script/qscriptarray_p.h
src/script/qscriptasm_p.h
src/script/qscriptbuffer_p.h
src/script/qscriptclass.cpp
src/script/qscriptcompiler.cpp
src/script/qscriptcompiler_p.h
src/script/qscriptcontext.cpp
src/script/qscriptcontext_p.cpp
src/script/qscriptcontext_p.h
src/script/qscriptcontextfwd_p.h
src/script/qscriptecmaarray.cpp
src/script/qscriptecmaarray_p.h
src/script/qscriptecmaboolean.cpp
src/script/qscriptecmacore.cpp
src/script/qscriptecmadate.cpp
src/script/qscriptecmadate_p.h
src/script/qscriptecmaerror.cpp
src/script/qscriptecmaerror_p.h
src/script/qscriptecmafunction.cpp
src/script/qscriptecmafunction_p.h
src/script/qscriptecmaglobal.cpp
src/script/qscriptecmaglobal_p.h
src/script/qscriptecmamath.cpp
src/script/qscriptecmamath_p.h
src/script/qscriptecmanumber.cpp
src/script/qscriptecmanumber_p.h
src/script/qscriptecmaobject.cpp
src/script/qscriptecmaobject_p.h
src/script/qscriptecmaregexp.cpp
src/script/qscriptecmaregexp_p.h
src/script/qscriptecmastring.cpp
src/script/qscriptecmastring_p.h
src/script/qscriptengine.cpp
src/script/qscriptengine_p.cpp
src/script/qscriptengine_p.h
src/script/qscriptenginefwd_p.h
src/script/qscriptextenumeration.cpp
src/script/qscriptextenumeration_p.h
src/script/qscriptextqobject.cpp
src/script/qscriptextqobject_p.h
src/script/qscriptextvariant.cpp
src/script/qscriptfunction.cpp
src/script/qscriptfunction_p.h
src/script/qscriptgc_p.h
src/script/qscriptmember_p.h
src/script/qscriptobject_p.h
src/script/qscriptprettypretty.cpp
src/script/qscriptprettypretty_p.h
src/script/qscriptvalue.cpp
src/script/qscriptvalueimpl.cpp
src/script/qscriptvalueimpl_p.h
src/script/qscriptvalueimplfwd_p.h
src/script/qscriptvalueiteratorimpl.cpp
src/script/qscriptxmlgenerator.cpp
src/script/qscriptxmlgenerator_p.h
src/sql/drivers/sqlite/qsql_sqlite.cpp
src/svg/qsvghandler.cpp
src/svg/qsvgstyle.cpp
src/xmlpatterns/expr/qcastingplatform_p.h
src/xmlpatterns/iterators/qcachingiterator_p.h
src/xmlpatterns/parser/qquerytransformparser_p.h
tests/auto/q3uridrag/tst_q3uridrag.cpp
tests/auto/qcombobox/tst_qcombobox.cpp
tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp
tests/auto/qkeyevent/tst_qkeyevent.cpp
tests/auto/qmainwindow/tst_qmainwindow.cpp
tests/auto/qnetworkcookiejar/tst_qnetworkcookiejar.cpp
tests/auto/qsqltablemodel/tst_qsqltablemodel.cpp
tests/auto/qsslsocket/tst_qsslsocket.cpp
tests/auto/qurl/tst_qurl.cpp
tests/auto/qvariant/tst_qvariant.cpp
tests/auto/qwidget/tst_qwidget.cpp
tests/auto/uic/baseline/batchtranslation.ui
tests/auto/uic/baseline/batchtranslation.ui.h
tests/auto/uic/baseline/config.ui
tests/auto/uic/baseline/config.ui.h
tests/auto/uic/baseline/finddialog.ui
tests/auto/uic/baseline/finddialog.ui.h
tests/auto/uic/baseline/formwindowsettings.ui
tests/auto/uic/baseline/formwindowsettings.ui.h
tests/auto/uic/baseline/helpdialog.ui
tests/auto/uic/baseline/helpdialog.ui.h
tests/auto/uic/baseline/listwidgeteditor.ui
tests/auto/uic/baseline/listwidgeteditor.ui.h
tests/auto/uic/baseline/mainwindowbase.ui
tests/auto/uic/baseline/mainwindowbase.ui.h
tests/auto/uic/baseline/newactiondialog.ui
tests/auto/uic/baseline/newactiondialog.ui.h
tests/auto/uic/baseline/newform.ui
tests/auto/uic/baseline/newform.ui.h
tests/auto/uic/baseline/orderdialog.ui
tests/auto/uic/baseline/orderdialog.ui.h
tests/auto/uic/baseline/paletteeditor.ui
tests/auto/uic/baseline/paletteeditor.ui.h
tests/auto/uic/baseline/paletteeditoradvancedbase.ui
tests/auto/uic/baseline/paletteeditoradvancedbase.ui.h
tests/auto/uic/baseline/phrasebookbox.ui
tests/auto/uic/baseline/phrasebookbox.ui.h
tests/auto/uic/baseline/plugindialog.ui
tests/auto/uic/baseline/plugindialog.ui.h
tests/auto/uic/baseline/previewwidget.ui
tests/auto/uic/baseline/previewwidget.ui.h
tests/auto/uic/baseline/previewwidgetbase.ui
tests/auto/uic/baseline/previewwidgetbase.ui.h
tests/auto/uic/baseline/qfiledialog.ui
tests/auto/uic/baseline/qfiledialog.ui.h
tests/auto/uic/baseline/qtgradientdialog.ui
tests/auto/uic/baseline/qtgradientdialog.ui.h
tests/auto/uic/baseline/qtgradientviewdialog.ui
tests/auto/uic/baseline/qtgradientviewdialog.ui.h
tests/auto/uic/baseline/saveformastemplate.ui
tests/auto/uic/baseline/saveformastemplate.ui.h
tests/auto/uic/baseline/statistics.ui
tests/auto/uic/baseline/statistics.ui.h
tests/auto/uic/baseline/stringlisteditor.ui
tests/auto/uic/baseline/stringlisteditor.ui.h
tests/auto/uic/baseline/tabbedbrowser.ui
tests/auto/uic/baseline/tabbedbrowser.ui.h
tests/auto/uic/baseline/tablewidgeteditor.ui
tests/auto/uic/baseline/tablewidgeteditor.ui.h
tests/auto/uic/baseline/translatedialog.ui
tests/auto/uic/baseline/translatedialog.ui.h
tests/auto/uic/baseline/treewidgeteditor.ui
tests/auto/uic/baseline/treewidgeteditor.ui.h
tests/auto/uic/baseline/trpreviewtool.ui
tests/auto/uic/baseline/trpreviewtool.ui.h
tests/auto/uic3/baseline/previewwidget.ui
tests/auto/uic3/baseline/previewwidget.ui.4
tests/auto/uic3/baseline/previewwidgetbase.ui
tests/auto/uic3/baseline/previewwidgetbase.ui.4
tests/auto/uic3/baseline/qactivexselect.ui
tests/auto/uic3/baseline/qactivexselect.ui.4
tests/auto/uiloader/baseline/batchtranslation.ui
tests/auto/uiloader/baseline/config.ui
tests/auto/uiloader/baseline/finddialog.ui
tests/auto/uiloader/baseline/formwindowsettings.ui
tests/auto/uiloader/baseline/helpdialog.ui
tests/auto/uiloader/baseline/listwidgeteditor.ui
tests/auto/uiloader/baseline/mainwindowbase.ui
tests/auto/uiloader/baseline/newactiondialog.ui
tests/auto/uiloader/baseline/newform.ui
tests/auto/uiloader/baseline/orderdialog.ui
tests/auto/uiloader/baseline/paletteeditor.ui
tests/auto/uiloader/baseline/paletteeditoradvancedbase.ui
tests/auto/uiloader/baseline/phrasebookbox.ui
tests/auto/uiloader/baseline/plugindialog.ui
tests/auto/uiloader/baseline/previewwidget.ui
tests/auto/uiloader/baseline/previewwidgetbase.ui
tests/auto/uiloader/baseline/qfiledialog.ui
tests/auto/uiloader/baseline/qtgradientdialog.ui
tests/auto/uiloader/baseline/qtgradienteditor.ui
tests/auto/uiloader/baseline/qtgradientviewdialog.ui
tests/auto/uiloader/baseline/saveformastemplate.ui
tests/auto/uiloader/baseline/statistics.ui
tests/auto/uiloader/baseline/stringlisteditor.ui
tests/auto/uiloader/baseline/tabbedbrowser.ui
tests/auto/uiloader/baseline/tablewidgeteditor.ui
tests/auto/uiloader/baseline/translatedialog.ui
tests/auto/uiloader/baseline/treewidgeteditor.ui
tests/auto/uiloader/baseline/trpreviewtool.ui
tests/auto/windowsmobile/test/test.pro
tests/auto/xmlpatternsdiagnosticsts/test/tst_xmlpatternsdiagnosticsts.cpp
tools/doxygen/config/header.html
tools/doxygen/config/phonon.doxyfile
tools/installer/nsis/opensource.ini
tools/linguist/phrasebooks/polish.qph
tools/linguist/shared/cpp.cpp
tools/linguist/shared/ts.dtd
tools/qdoc3/test/assistant.qdocconf
tools/qdoc3/test/designer.qdocconf
tools/qdoc3/test/linguist.qdocconf
tools/qdoc3/test/qmake.qdocconf
tools/qdoc3/test/qt-build-docs.qdocconf
tools/qdoc3/test/qt-inc.qdocconf
tools/qdoc3/test/qt.qdocconf
tools/qvfb/qtopiakeysym.h
tools/qvfb/qvfbx11view.cpp
tools/qvfb/qvfbx11view.h
tools/qvfb/x11keyfaker.cpp
tools/xmlpatterns/main.cpp
tools/xmlpatterns/main.h
tools/xmlpatterns/qcoloringmessagehandler_p.h
tools/xmlpatterns/qcoloroutput.cpp
tools/xmlpatterns/qcoloroutput_p.h
translations/assistant_de.ts
translations/qt_ar.ts
translations/qt_da.ts
translations/qt_de.ts
translations/qt_fr.ts
translations/qt_ja_JP.ts
translations/qt_ru.ts
translations/qt_uk.ts
translations/qt_zh_CN.ts
util/qlalr/compress.cpp
util/qlalr/cppgenerator.cpp
util/qlalr/dotgraph.cpp
util/qlalr/grammar.cpp
util/qlalr/lalr.cpp
util/qlalr/main.cpp
util/qlalr/parsetable.cpp
util/qlalr/recognizer.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes a regression when computing the clip path for a
QGraphicsWidget that clip its children to its shape. The clip path cache
use the bounding rect which has a null width and height the very first
time on a QGraphicsWidget. This might happen as well for any item that
have a null width and height (e.g. QGraphicsRectItem before you set the
rect). We should do better in mainline by refactoring this clip path
cache and calling it in prepareGeometryChange which should be called
when you update the shape and the boundingRect of the item. Do we
really need also in 4.6/mainline the clip path as it is now? This should
be investigate also. The auto-test cover the problem so we can use it
after for refactoring the cached clip path.
Task-number: 257232
Reviewed-by: andreas
Reviewed-by: bnilsen
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change f68fed3 introduced a few regressions in the QGraphicsWidget
autotests. It turned out those autotests relied on behavior that this
fix "fixed". The exact bugs were 1) that setting focus on a window
or a child of a window that isn't active will automatically give that
item focus, despite that its window is inactive (in contrast it should
just set up subfocus and give the item focus when the window is
activated), and 2) that adding a window to a scene that is active did
not immediately activate that window.
So one fix in the test and one in QGraphicsScene. The autotests were
modified so that the respective tests operate on an active scene (by
assigning the scene to an active view). The change in QGraphicsScene
ensures that the first window that gets added to an active scene that
does not have any active windows already, automatically gets activated.
Reviewed-by: Michael Brasser
|
|\ \
| |/ |
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
properly pass to drawItemHelper.
The second is a double conversion to deviceTransform in createStyleOption
of QGraphicsItem. Since the recursive drawing already give a transform
in device mode we don't need to convert it two times.
Reviewed-by:andreas
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
Conflicts:
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp
tests/auto/selftests/expected_skip.txt
tests/auto/selftests/tst_selftests.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We were adding two times in the QActionPrivate list the entry for
the current QGraphicsWidget if the action was existing before.
Task-number:KDE
Reviewed-by:bnilsen
BT:yes
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The bug report came from the Declarative UI project as part of Kinetic.
In FxFlickable the mouse is explicitly grabbed inside the mouse press
event handler, and it's (explicitly) released in the release handler.
When doing this, lastMouseGrabber is 0, and the double-click is delivered
as a press. The fix is to not convert the double-click to a press if the
receiver is the first and only mouse grabber (i.e., lastMouseGrabber is
0).
The fix isn't entirely correct, as it can in theory allow an item to
receive a double-click event as the first received event. This seems
to only be possible in the case of using explicit mouse grabbing in
combinations with the press and release event handlers so it's quite
a corner case.
Reviewed-by: Alexis
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For a QGraphicsWidget w, a shortcut with Qt::WidgetWithChildren context would
trigger even if w did not have focus (provided no other widgets in the view
had focus).
Reviewed-by: andreas
Task-number: 250119
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change fd4d94df4eb16e9e54f61dd8ee45914e24832ae9 introduced mouse grab
and keyboard grab support to Graphics View (this was as part of 4.4).
The change was missing a large set of autotests that I wrote to test
the behavior of these features. As part of task 245317, which involves
investigating modality in Graphics View, I figured it would be a good
idea to start off but reconstructing these autotests. So this change
is mainly about adding autotests for mouse grabbing. And of course,
as it always is, I found two bugs while writing these tests.
1) Calling QGraphicsItem::grabMouse() while the item is holding the
implicit mouse grab will now upgrade the implicit grab to an
explicit grab.
2) Adding a popup to the scene will automatically grab the mouse.
Before, the popup would get the grab on show(), but if it was
already visible when added to the scene it would not gain the
grab.
Task-number: 245317
Reviewed-by: jasplin
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Do not send a QFontChange event before the item has been polished. This
is because we cannot call a virtual function while we're in the ctor.
This is basically the same as how we do it in QWidget.
Task-number: 246215
Reviewed-by: alexis
|
| |
|
|
|