Commit Graph

38 Commits

Author SHA1 Message Date
Fawzi Mohamed
18fa486531 consoleprocess: support Terminal.app on mac
Distinguishes the process that starts the terminal from the stub
process, as on mac to support Terminal.app they are different.

Handle the stub not through the process that starts the terminal,
but through the local socket (on *nix).

Replace the blocking wait(...) in the main thread, with a nonblocking
wait in the signal handler when receiving a SIGCHLD, to leave the
main thread able to handle communication with creator.

This change allows the use of terminal emulator commands
that share a single instance or that fork.
So this is also the real fix for QTCREATORBUG-1633 on linux.

If creator crashes the stub and the debugged program live on.
This was done on purpose, it could be changed if considered better.

Task-number: QTCREATORBUG-6371
Task-number: QTCREATORBUG-1633

Change-Id: I4d4fb3a67b1987f4e46e2c603dcefe8c15152ad2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-01-29 17:56:59 +01:00
Friedemann Kleint
033f211a10 Windows compile fix.
e8b5c6dfcca3fc139049136b42459e7840efed7 :
Provide terminal emulator functionality in ConsoleProcess for
Windows as well.

e833b794b3 :
Use Core::Id().

Change-Id: Idad2bd2180e9a5dd2d1266496e340726435835d3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-12-29 20:55:03 +01:00
Eike Ziller
6fd252b0a5 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.cpp
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.h
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessageloghandler.h
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/madde/maemodeployconfigurationwidget.h
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentinfo.h
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	src/plugins/remotelinux/remotelinuxdeploymentdatamodel.h
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/ichecklib_global.h
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h
	tests/manual/ssh/tunnel/tunnel.h

Change-Id: I04d7761df6bd936ad00e0547974284c967d39580
2012-10-05 21:20:50 +02:00
hjk
386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Oswald Buddenhagen
a32e243e61 Merge branch '2.6'
Conflicts:
	src/libs/utils/consoleprocess_unix.cpp

Change-Id: I196f61e882bfce94e165d9c724bffee9df1011b7
2012-08-30 20:43:02 +02:00
Friedemann Kleint
5c4fddc6a5 Detect Linux terminal by checking a number of known terminals.
Change the behaviour of defaultTerminalEmulator() to already
return the run option in line with terminalEmulator().

Change the QLineEdit in settings to an editable
combo offering the available terminals.

Change-Id: I333ef08ad06934bcd9fcafb50ff1eced1af6293a
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@nokia.com>
2012-08-30 15:49:40 +02:00
Christian Kandeler
e669f05406 Utils: Introduce HostOsInfo class.
The class' member functions are intended to be used
instead of the Q_OS_* macros in all contexts where
the latter are not syntactically required.
This lowers the likelihood of changes made on one
platform breaking the build on another, e.g. due to
the code model missing symbols in #ifdef'ed out code
when refactoring.

Change-Id: I4a54788591b4c8f8d589b8368a6c683d4155c9fa
Reviewed-by: hjk <qthjk@ovi.com>
2012-08-27 17:00:03 +02:00
Eike Ziller
e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
Robert Loehning
b41171c847 Normalized connect()s
Change-Id: Id353ab140a46e06ffc3abf667ab3b234e749e17c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-03-06 12:46:52 +01:00
Erik Verbruggen
3fa55b7ab9 Removed module names from #include directives.
Getting the #include directives ready for Qt5. This includes the
new-project wizards.

Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-02-15 16:24:46 +01:00
hjk
2931a499e6 Long live the king!
Change-Id: I2b72b34c0cfeafc8bdbaf49b83ff723544f2b6e2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-26 19:55:36 +01:00
Friedemann Kleint
ac54974b32 Utils: Compile with QT_NO_CAST_FROM_ASCII.
Change-Id: I5cd5607fcd3311915217a1615b948587ef808cfa
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-01-06 09:31:14 +01:00
hjk
31600758de all: s/info@qt.nokia.com/qt-info@nokia.com/
Change-Id: If18afb5d4665924e7d9250dccbc60a65e6daa75e
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-03 10:33:19 +01:00
Eike Ziller
faa792f3cd Use absolute path for xterm on Mac and remove unused file.
xterm is (no longer?) in the PATH on Mac, so we need to point to it
directly.

Task-number: QTCREATORBUG-6150
Change-Id: I84202d0ebac1b8875c890116cce960898f65e5f9
Reviewed-on: http://codereview.qt-project.org/5303
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2011-09-27 17:42:00 +02:00
Oswald Buddenhagen
cfb232eba9 ConsoleProcess: undo pointless processError() => processMessage(bool error) change 2011-05-12 20:39:44 +02:00
Oswald Buddenhagen
322a8481a7 unify application launcher between platforms
purge abstractprocess and winguiprocess. they serve no purpose.

applications can have stdio on windows as well, in addition to the
windows debug channel.

Task-number: QTCREATORBUG-4822
2011-05-12 20:39:44 +02:00
Tobias Hunger
aa2acec14c Fix/add copyright headers
Change-Id: I8b73d583be1ee7183f4074bce49d5390e38631a2
2011-05-06 15:17:05 +02:00
hjk
8397663964 Update license. 2011-04-13 11:49:28 +02:00
Oswald Buddenhagen
35743ea1ad add disk full error handling to consoleprocess 2011-03-30 11:56:29 +02:00
con
d1023c7614 It's 2011 now.
Reviewed-by: hjk
2011-01-12 09:46:24 +01:00
con
b1bcf081d8 Merge branch '2.1'
Conflicts:
	src/plugins/coreplugin/basemode.cpp
	src/plugins/coreplugin/basemode.h
	src/plugins/coreplugin/scriptmanager/qworkbench_wrapper.cpp
	src/plugins/coreplugin/scriptmanager/qworkbench_wrapper.h
	src/plugins/debugger/cdb/cdbsymbolpathlisteditor.cpp
	src/plugins/debugger/debuggeragents.cpp
	src/plugins/debugger/debuggeruiswitcher.cpp
	src/plugins/debugger/debuggeruiswitcher.h
	src/plugins/projectexplorer/buildconfigdialog.cpp
	src/plugins/qmldesigner/components/propertyeditor/colorwidget.cpp
	src/plugins/qmldesigner/components/propertyeditor/colorwidget.h
	src/plugins/qmldesigner/designercore/include/enumeratormetainfo.h
	src/plugins/qmldesigner/designercore/include/modelutilities.h
	src/plugins/qmldesigner/designercore/include/nodeinstance.h
	src/plugins/qmldesigner/designercore/include/propertymetainfo.h
	src/plugins/qmldesigner/designercore/instances/graphicsscenenodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/graphicsscenenodeinstance.h
	src/plugins/qmldesigner/designercore/instances/graphicsviewnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/graphicswidgetnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/graphicswidgetnodeinstance.h
	src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/qmlviewnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/widgetnodeinstance.cpp
	src/plugins/qmldesigner/designercore/instances/widgetnodeinstance.h
	src/plugins/qmldesigner/designercore/metainfo/enumeratormetainfo.cpp
	src/plugins/qmldesigner/designercore/metainfo/propertymetainfo.cpp
	src/plugins/qmldesigner/designercore/model/modelutilities.cpp
	src/plugins/snippets/inputwidget.cpp
	src/plugins/snippets/snippetscompletion.cpp
	src/plugins/snippets/snippetscompletion.h
	src/plugins/snippets/snippetspec.cpp
	src/plugins/snippets/snippetsplugin.cpp
	src/plugins/snippets/snippetswindow.cpp
	src/plugins/snippets/snippetswindow.h
	src/plugins/texteditor/snippetsparser.cpp
	src/tools/qml/qmldom/main.cpp
	tests/manual/trk/runner.cpp
	tests/manual/trk/trkolddevice.cpp
	tests/manual/trk/trkolddevice.h
	tests/manual/trk/trkserver.cpp
2010-12-17 17:00:53 +01:00
con
04e32b0049 License headers. 2010-12-17 16:03:42 +01:00
Oswald Buddenhagen
1e362b0f8b overhaul process argument handling
get away from argument stringlists. instead, use native shell command
lines which support quoting/splitting, environment variable expansion
and redirections with well-understood semantics.

Task-number: QTCREATORBUG-542
Task-number: QTCREATORBUG-1564
2010-11-17 13:19:07 +01:00
Friedemann Kleint
6650275e76 Debugger/Console stub: Pass on main thread id on Windows.
Introduce private class to utils/ConsoloProcess as not to expose
<windows.h> from its header.

Task-number: QTCREATORBUG-1020
2010-09-02 13:39:19 +02:00
Erik Verbruggen
e3bceff3ee Separated child-process stdout/stderr, and seperated "our" output/errors.
So now the "Applciation Output" can distinguish between these four, and
handle them appropriately.
2010-04-19 14:21:48 +02:00
hjk
fbc4dab772 fix for QTCREATORBUG-927 2010-03-23 11:16:35 +01:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00
Friedemann Kleint
5948e284bb Rename namespace Core::Utils into Utils
Also move Designer::Internal::FormWindowEditor ->
Designer::FormWindowEditor.
2009-10-05 11:06:05 +02:00
hjk
93cbef8724 long live the king 2009-08-14 09:30:56 +02:00
Jason McDonald
884b7af769 Update license headers and sales contact details.
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10:00
Friedemann Kleint
e0de01190f Started Console process handling for CDB.
Introduced "Suspend" mode for the process stub and corresponding
mode enumeration in console process (Windows).
2009-05-06 14:26:20 +02:00
Friedemann Kleint
2f129dfad3 Fixed some translation errors. 2009-04-30 16:09:57 +02:00
Oswald Buddenhagen
894ee04ee0 make terminal emulator configurable centrally
this includes changing the runInTerminal.command command line.
the terminal setting mock from the debugger plugin is gone again.
2009-04-14 11:41:23 +02:00
Oswald Buddenhagen
c8c183f6b4 use temp file to pass env on unix as well
the linux command line can be 32k long ... which might still be not
enough. well, in fact, it just makes the 'ps' output unreadable.
2009-04-14 10:24:06 +02:00
con
1ed3298ae2 Fixes: Correct path for qtcreator_process_stub on Mac
RevBy:    Ossi
2009-03-11 16:07:49 +01:00
Oswald Buddenhagen
bbaf7893cc "debug in terminal" feature.
includes complete refactoring of ConsoleProcess.
2009-02-27 18:04:36 +01:00
Oswald Buddenhagen
d35e190601 don't allocate m_process dynamically 2009-02-27 18:04:36 +01:00
Oswald Buddenhagen
1c2f0f64c1 move abstractprocess and consoleprocess to libs/utils/
will use it also in the debugger, and pulling it in from projectexplorer
just seems wrong.
2009-02-27 18:04:36 +01:00