summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qcocoaapplicationdelegate_mac.mm
Commit message (Collapse)AuthorAgeFilesLines
* Change behavior of applicationShouldTerminate.Fabien Freling2010-03-051-8/+5
| | | | | | | | We now terminate the application as long as Qt says we can. If not, then we cancel the termination. Task-number: QTBUG-6296 Reviewed-by: Morten Sorvig
* Merge branch '4.6'Thiago Macieira2010-01-131-1/+1
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: bin/syncqt doc/src/deployment/deployment.qdoc src/corelib/io/qfsfileengine_win.cpp src/corelib/xml/qxmlstream.cpp src/opengl/gl2paintengineex/qpaintengineex_opengl2_p.h tools/assistant/tools/assistant/centralwidget.cpp tools/linguist/lupdate/main.cpp
| * Update copyright year to 2010Jason McDonald2010-01-061-1/+1
| | | | | | | | Reviewed-by: Trust Me
* | Cocoa: application will not quit when using dialogsRichard Moe Gustavsen2010-01-121-0/+7
|/ | | | | | | | | | | | | | | | When creating a single dialog in the main function, and tell it to exec, we run a modal dialog. But there is really no other window on screen to be modal for. So in that case, since this is a rather common pattern for Qt applications, we allow users to quit the application from the dock. But this action is sendt as an apple event. And and that point in time, cocoa has the the apple event handler, and refuses to close down the application because it detects a modal window. Our solution is to install/overwrite the apple event handler for kAEQuit _after_ cocoa has finished its own installation. But in order to do this, we need to wait until [NSApplication run] has started, otherwise it will not take effect. And that is what this patch essentially does.
* Mac: added some useful comments onlyRichard Moe Gustavsen2009-11-231-0/+3
|
* Add support for GetURL events on Mac OS XTor Arne Vestbø2009-11-051-0/+11
| | | | | | | | | | | | | | | | | | | | | GetURL events are delivered by Launch Services to the application if the application is registered as the default handler for the given protocol, and the user for example issues 'open http://foo.com/' in the console or clicks a link in another application. The GetURL event is converted to a QFileOpenEvent, which now has both a QUrl constructor and a url() method. These two new methods work in sync with the file() method, so a QFileOpenEvent constructed from a QUrl will return a valid file name from file() if the URL was a local file. The boolean argument to AEInstallEventHandler decides whether the handler is to be added to the system event dispatch table or the application's event dispatch table. Previously we added it to the system table, but this did not work for the GetURL event. We now use the application event table, which works for all three of the events we register on Carbon. Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | Reviewed-by: Trust Me
* Merge branch '4.5' into 4.6Thiago Macieira2009-09-031-3/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/src/frameworks-technologies/dbus-adaptors.qdoc doc/src/qtdbus.qdoc src/gui/accessible/qaccessible_mac_cocoa.mm src/gui/kernel/qapplication_win.cpp src/xmlpatterns/parser/createTokenLookup.sh tests/auto/linguist/lupdate/testdata/good/merge_versions/project.ui tests/auto/linguist/lupdate/testdata/good/mergeui/project.ui tests/auto/linguist/lupdate/testdata/good/parseui/project.ui tests/auto/runQtXmlPatternsTests.sh tests/auto/test.pl 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/about.ui tests/auto/uic3/baseline/about.ui.4 tests/auto/uic3/baseline/actioneditor.ui tests/auto/uic3/baseline/actioneditor.ui.4 tests/auto/uic3/baseline/config.ui tests/auto/uic3/baseline/config.ui.4 tests/auto/uic3/baseline/configtoolboxdialog.ui tests/auto/uic3/baseline/configtoolboxdialog.ui.4 tests/auto/uic3/baseline/connectiondialog.ui tests/auto/uic3/baseline/connectiondialog.ui.4 tests/auto/uic3/baseline/createtemplate.ui tests/auto/uic3/baseline/createtemplate.ui.4 tests/auto/uic3/baseline/customwidgeteditor.ui tests/auto/uic3/baseline/customwidgeteditor.ui.4 tests/auto/uic3/baseline/dbconnection.ui tests/auto/uic3/baseline/dbconnection.ui.4 tests/auto/uic3/baseline/dbconnectioneditor.ui tests/auto/uic3/baseline/dbconnectioneditor.ui.4 tests/auto/uic3/baseline/dbconnections.ui tests/auto/uic3/baseline/dbconnections.ui.4 tests/auto/uic3/baseline/editfunctions.ui tests/auto/uic3/baseline/editfunctions.ui.4 tests/auto/uic3/baseline/finddialog.ui tests/auto/uic3/baseline/finddialog.ui.4 tests/auto/uic3/baseline/formsettings.ui tests/auto/uic3/baseline/formsettings.ui.4 tests/auto/uic3/baseline/gotolinedialog.ui tests/auto/uic3/baseline/gotolinedialog.ui.4 tests/auto/uic3/baseline/helpdialog.ui tests/auto/uic3/baseline/helpdialog.ui.4 tests/auto/uic3/baseline/iconvieweditor.ui tests/auto/uic3/baseline/iconvieweditor.ui.4 tests/auto/uic3/baseline/listboxeditor.ui tests/auto/uic3/baseline/listboxeditor.ui.4 tests/auto/uic3/baseline/listeditor.ui tests/auto/uic3/baseline/listeditor.ui.4 tests/auto/uic3/baseline/listvieweditor.ui tests/auto/uic3/baseline/listvieweditor.ui.4 tests/auto/uic3/baseline/mainfilesettings.ui tests/auto/uic3/baseline/mainfilesettings.ui.4 tests/auto/uic3/baseline/mainwindowbase.ui tests/auto/uic3/baseline/mainwindowbase.ui.4 tests/auto/uic3/baseline/mainwindowwizard.ui tests/auto/uic3/baseline/mainwindowwizard.ui.4 tests/auto/uic3/baseline/multilineeditor.ui tests/auto/uic3/baseline/multilineeditor.ui.4 tests/auto/uic3/baseline/newform.ui tests/auto/uic3/baseline/newform.ui.4 tests/auto/uic3/baseline/paletteeditor.ui tests/auto/uic3/baseline/paletteeditor.ui.4 tests/auto/uic3/baseline/paletteeditoradvanced.ui tests/auto/uic3/baseline/paletteeditoradvanced.ui.4 tests/auto/uic3/baseline/paletteeditoradvancedbase.ui tests/auto/uic3/baseline/paletteeditoradvancedbase.ui.4 tests/auto/uic3/baseline/pixmapcollectioneditor.ui tests/auto/uic3/baseline/pixmapcollectioneditor.ui.4 tests/auto/uic3/baseline/pixmapfunction.ui tests/auto/uic3/baseline/pixmapfunction.ui.4 tests/auto/uic3/baseline/preferences.ui tests/auto/uic3/baseline/preferences.ui.4 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/projectsettings.ui tests/auto/uic3/baseline/projectsettings.ui.4 tests/auto/uic3/baseline/replacedialog.ui tests/auto/uic3/baseline/replacedialog.ui.4 tests/auto/uic3/baseline/richtextfontdialog.ui tests/auto/uic3/baseline/richtextfontdialog.ui.4 tests/auto/uic3/baseline/settingsdialog.ui tests/auto/uic3/baseline/settingsdialog.ui.4 tests/auto/uic3/baseline/sqlformwizard.ui tests/auto/uic3/baseline/sqlformwizard.ui.4 tests/auto/uic3/baseline/startdialog.ui tests/auto/uic3/baseline/startdialog.ui.4 tests/auto/uic3/baseline/statistics.ui tests/auto/uic3/baseline/statistics.ui.4 tests/auto/uic3/baseline/tabbedbrowser.ui tests/auto/uic3/baseline/tabbedbrowser.ui.4 tests/auto/uic3/baseline/tableeditor.ui tests/auto/uic3/baseline/tableeditor.ui.4 tests/auto/uic3/baseline/topicchooser.ui tests/auto/uic3/baseline/topicchooser.ui.4 tests/auto/uic3/baseline/variabledialog.ui tests/auto/uic3/baseline/variabledialog.ui.4 tests/auto/uic3/baseline/wizardeditor.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 tools/assistant/compat/mainwindow.cpp tools/assistant/tools/assistant/mainwindow.cpp tools/designer/src/designer/versiondialog.cpp tools/linguist/linguist/mainwindow.cpp tools/linguist/shared/make-qscript.sh tools/qdbus/qdbusviewer/qdbusviewer.cpp
| * Update license headers.Jason McDonald2009-09-021-3/+0
| | | | | | | | Reviewed-by: Trust Me
* | Merge branch '4.5' into 4.6Thiago Macieira2009-08-311-13/+13
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * Update tech preview license header.Jason McDonald2009-08-311-13/+13
| | | | | | | | Reviewed-by: Trust Me
| * Update license headers.Jason McDonald2009-08-111-1/+1
| | | | | | | | Reviewed-by: Trust Me
* | Cocoa: cannot quit applicationRichard Moe Gustavsen2009-08-201-5/+13
| | | | | | | | | | | | | | | | | | | | If Qt is used from within a native cocoa application. This patch allowes the application to terminate if we have no current event loops running. This should be safe in itself, and also handle the case where NSApp run is called from outside Qt. Task-number: 259928 Reviewed-by: msorvig
* | Update contact URL in license headers.Jason McDonald2009-08-121-1/+1
|/ | | | Reviewed-by: Trust Me
* Remove some warnings in the Cocoa build.Norwegian Rock Cat2009-06-231-2/+1
| | | | | | | | | | After discussing with some of the Objective-C people I have finally got a fair number of the warnings to disappear in both 10.5 and 10.6. I also took the opportunity to remove a bunch of other warnings. Reviewed by: Morten Sørvig
* Update license headers as requested by the marketing department.Jason McDonald2009-06-161-2/+2
| | | | Reviewed-by: Trust Me
* BT: Namespace compile fixes.Norwegian Rock Cat2009-05-251-1/+1
| | | | | This broke again. I Need to get a way to automate this, I'll discuss with QA.
* Make command-quit not terminate the program on Qt/Cocoa.Morten Sørvig2009-05-051-3/+6
| | | | | | | | Instead instigate the quit by calling QApplication::quit(), using the code that was already in place. This allows QApplication::exec() to return normally and prevents resrouce leaks for objects created on the stack in main(). Reviewed-by: nrc
* Ensure that we send the Apple Events even when Cocoa isn't ready.Norwegian Rock Cat2009-05-041-0/+2
| | | | | | | | | | | | | | In general, Cocoa handles the the Apple Events for us. However, this is time between creating the NSApplication and Cocoa has set everything up, usually after the event loop is running. This means that until that time, the events are dropped on the floor :-/. The workaround is to use the same handler that we use for Carbon, but to only have it enabled for until Cocoa is ready to handle things. This will result in not stepping on the toes when used in a plugin (if it does, we can conditionalize it). Task-number: 252795 Reviewed-by: Richard Moe Gustavsen
* BT: Fix up comments in new Cocoa files.Norwegian Rock Cat2009-04-081-11/+11
| | | | | | 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.
* Don't send QFileOpenEvents for items on the command-lineNorwegian Rock Cat2009-03-301-4/+20
| | | | | | | | | | | | | | | | | | | | Cocoa actually has a nice feature that if you pass arguments on the command-line, Cocoa will pass those along as Open events later. This is probably how we should have handled things inside of Qt as it would have unified the file opening code. Unfortunately, we can't turn back time on this, so we need to prevent it because people probably aren't expecting it (i.e., they expect to do the parsing themselves, and not to get events later). This also means that we can send the event immediately instead of posting it, because the race that we had before no longer exists. We only do this check during launch time because that's the only time we may get bitten by it (people usually only parse the arguments once). Someday, people may actually WANT this functionality though. When that comes along, we should make it an application attribute. Task-number: 249553 Reviewed-by: Richard Moe Gustavsen
* Long live Qt 4.5!Lars Knoll2009-03-231-0/+282