| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Seems like the QMacNativeWidget was almost not
testet at all. It all breaks down when embedding
QLineEdits (with respect to focus). This is a
first patch that fixes this issue.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since mouse tracking is always enabled on all QCocoaView-s, we are
getting mouseMoved events for both parent and child (if mouse is over
the child). In such cases the mouseMoved events are ignored for the
parent view.
We are using the native NSCursor stack for setting the override cursor.
The current implementation for changeOverrideCursor is modified to keep
this stack in sync with Qt's internal list.
Task-number: 258173
Reviewed-by: Morten Sorvig
|
| |
|
|
|
|
|
|
| |
legacy and completely pointless...
Reviewed-By: Eskil
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
| |
Cocoa: Add support for native gestures
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/corelib/tools/qsharedpointer.cpp
src/corelib/tools/qsharedpointer_impl.h
src/gui/dialogs/qcolordialog.cpp
src/gui/painting/qwindowsurface_raster.cpp
src/network/access/qnetworkaccessmanager.cpp
tests/auto/qsharedpointer/externaltests.cpp
|
| |
| |
| |
| |
| |
| |
| | |
Added the needed macros around the classnames the way it
should be done.
Reviewed-by: Prasanth
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Handle the case when insertText is called with no corresponding
keyDown.
This fix is for the Cocoa port.
Task-number: 147379
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Mac supports only single key shortcuts as key equivalent for menu items.
So if a multiple key QKeySequence is set, use Qt's shortcut mechanism
instead of the native menu shortcut mechanism.
Task-number: 258438
Reviewed-by: Norwegian Rock Cat
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch includes lots of refactoring, but the real problem was that
in QWidgetPrivate::paintBackground we call drawPrimitive(PE_Widget) with
a potentialy translated painter, but the opt.rect is not translated.
When having a scroll area the calling function used to translated the
painter and then pass the offset around to rectify. but drawPrimitive
cannot rectify it.
The solution is not to translate the painter but use other way to
rectify the brush
Task-number: 257517
Reviewed-by: bnilsen
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/sql/drivers/ibase/qsql_ibase.cpp
tests/auto/q3sqlcursor/tst_q3sqlcursor.cpp
tests/auto/qsqldatabase/tst_databases.h
tests/auto/qsqldatabase/tst_qsqldatabase.cpp
translations/qt_ru.ts
|
| |
| |
| |
| |
| |
| |
| | |
After we implemented hitTest for QCocoaView, this function is no longer
used.
Reviewed-by: Norwegian Rock Cat
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Drag and drop events should consider the WA_TransparentForMouseEvents
attribute like the mouse events. If this attribute is set for a widget,
the event has to be passed to right widget under mouse. The widget is
identified by calling hitTest. In such cases the leave event has to be
delivered to the widget which actually accepted the enter event.
Task-number: 252088
Reviewed-by: Norwegian Rock Cat
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cocoa calls hitTest on our view to determine if
the view should get the mouse press. We always
said, "yes" and did all the logic ourselves. Turns
out that we can say "no" if I'm transparent to
mouse events and remove all that code where we do
all the work ourselves. Big maintenance win!
For the time being I've kept the
"transparentViewForEvent" method since it might be
useful for others, but no one is using it at the
moment and we may just kill it soon. HitTest should
handle this situation correctly.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Tracking of mouse events was only enabled when enableMouseTracking or
Hover or a tooltip had been set explictly on the item, but this meant
that the dynamic QEvent::Tooltips would never get dispatched. So, in
order to help out people that might use this feature, all QCocoaViews
must pay the mouse move event tax *sigh*.
I added comments in the proper places so that we DO the right thing for
a release where we can force the change in behavior.
Task-number: 257320
Reviewed-by: Denis
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cocoa calls hitTest on our view to determine if
the view should get the mouse press. We always
said, "yes" and did all the logic ourselves. Turns
out that we can say "no" if I'm transparent to
mouse events and remove all that code where we do
all the work ourselves. Big maintenance win!
For the time being I've kept the
"transparentViewForEvent" method since it might be
useful for others, but no one is using it at the
moment and we may just kill it soon. HitTest should
handle this situation correctly.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This enum indicates what kind of device generated the touch event
(TouchScreen or TouchPad). We use this information to control how touch
events are sent, specifically we restrict touch events to a single
widget/QGraphicsItem on touch-pads, since there is no direct
relationship between the physical touch location on the pad and the on-
using the touch-pad).
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
By default this is set to false, meaning you will only get multitouch
events. The reason why this is important is that we use the first
touch of a new touch sequence to find out which widget to send
the subsequent touches to. And on a touchpad, you normally want
this to be the widget under the cursor when more than one finger
is pressed on the pad.
|
| |
| |
| |
| |
| | |
After a lot of thinking, the conclusion is that we really need to
to this. Lets see if we can add a flag to control it next.
|
| | |
|
|\ \
| |/ |
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| | |
Reviewed-by: Richard Moe Gustavsen
|
|\ \
| |/
| |
| |
| | |
Conflicts:
tests/auto/qtreeview/tst_qtreeview.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There was some strangeness happening here with parents, but the main
problem was the fact that wheel was getting sent to the focusframe and
not to the widget below. However, the focusframe has the "transparent
for mouse events" flag set and wheel events probably should be
transparent as well.
Task-number: 253539
Reviewed-by: Richard Moe Gustavsen
|
|\ \
| |/
| |
| |
| |
| | |
Conflicts:
src/gui/kernel/qcocoaview_mac_p.h
src/gui/widgets/qmainwindow.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We were registering the types each time drag and drop was enabled, which
caused slowdowns when for example switching between the Edit and Debug
modes in QtCreator.
Instead, register the types on first enable and also when the custom types
change. Add check to draggingEntered() that disables the drag if
WA_DropSiteRegistered is false.
Reviewed-by: nrc
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Argh! Copy and paste is evil, not only was the test was wrong, We sent
the event twice and the second time we sent the wrong value.
Task-number: 250668
Reviewed-by: Morten Sørvig
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts (version number change in 4.5):
src/corelib/global/qglobal.h
src/qbase.pri
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.qdocconf
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In the updated examples, the drag operation is changed in the drop-event
handler, which was not handled correctly in the Cocoa. This is now
supported for drag and drop from same application. If the drop was to
another application, the drag will return the result from the last
drag-move event.
Task-number: 252103
Reviewed-by: nrc
|
|\ \
| |/
| |
| |
| | |
Conflicts:
tests/auto/qpainterpath/tst_qpainterpath.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Our "view under tranparent view" function was sound, but it didn't take
into consideration that fact that views in the hierarchy could be
hidden. This is most prominent when you have a QFocusFrame over a
QAbstractScrollArea.
Task-number: 251008
Reviewed-by: Morten Sørvig
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The NSOpenGLContext seems to be tied to the window. So if the view
changes from one window to another, the OpenGL context needs to be
cleared. We can do this by hooking into the viewWillChangeWindow and
viewDidChangeWindow events and clear and reset the drawable
respectively. We also found out that QCocoaOpenGLView was not being used
at all, so just remove it to get rid of any confusion.
Task-number: 250066
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The NSOpenGLContext seems to be tied to the window. So if the view
changes from one window to another, the OpenGL context needs to be
cleared. We can do this by hooking into the viewWillChangeWindow and
viewDidChangeWindow events and clear and reset the drawable
respectively. We also found out that QCocoaOpenGLView was not being used
at all, so just remove it to get rid of any confusion.
Task-number: 250066
Reviewed-by: Trond
|
|\ \
| |/
| |
| |
| | |
Conflicts:
src/gui/graphicsview/qgraphicsitem.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Cocoa has a different way of dealing with cursors than our heavy handed
approach that we used in Carbon. We simply need to re-implement the
proper function in NSView and set up the rectangles for the cursor
correctly. We also need to expose an QCursor2NSCursor type functions
since the current QCursor::handle() is useless for doing this and we
shouldn't change that. With this change things seem to work much more
like the native stuff for both Carbon and Cocoa.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This happens only on keyboard layouts like French. The is mainly due to
the key event processing done by the Input manager. In carbon, the key
down event has to be replayed after the input manager finishes his
processing. In Cocoa, while unmarking we have to accept the current text.
Task-number: 123740
Reviewed-by: nrc
|
|
|