terminals, including their window minimized status and workspaces. These
information are shared via our special-purpose clipboard. TerminalRoster
mainly acts as a cache.
* Removed the terminal ID management from TermApp. Most is now done by
TerminalRoster, the rest has been moved to TermWindow.
* Moved the terminal position file reading/writing from TermApp to TermWindow.
* Moved the remaining terminal window title handling from TermApp to TermWindow.
* Replaced the solution for #6613 implemented in r39530 (enabling/disabling the
"Switch Terminals" menu item depending on whether there are other Terminals).
The new solution is more correct, since it does enable the menu item, if and
only if switching to another Terminal will happen when triggering it. I.e.
minimized Terminals and ones on other workspaces are ignored.
Should also fix#6612, since there's no synchronous communication between
different terminal apps anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39562 a95241bf-73f2-0310-859d-f6bbb57e9c96
When in single window mode, also add opt+cmd+down as a shortcut to navigate to the selected folder in a new window. Fixes ticket #3548.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39551 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Ordered methods as they are declared in the header.
* Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39549 a95241bf-73f2-0310-859d-f6bbb57e9c96
Btw Axel, keyboard.cpp (forked from the bios_ia32 one) is still under "OpenBeOS licence" with 2 other copies, I suppose you are ok to change to MIT ?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39548 a95241bf-73f2-0310-859d-f6bbb57e9c96
* replaced .. with $(DOTDOT) in Jamfiles
* added __STDC_CONSTANT_MACROS define for C++ files (required for UINT64_C)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39537 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Tested with HUAWEI 3G Modem (12d1:1446 => 12d1:1001).
* Devices reference is usb-modeswitch-data-20100826 (added eight vendors).
* The driver doesn't expose any device entries, hence it should be linked at dev root.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39536 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Add communication part to restore and save S&T groups.
- Fix call of GetDecoratorSettings listener hook.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39534 a95241bf-73f2-0310-859d-f6bbb57e9c96
great example at getting senile - at least he told me about this solution
before; the same trick is already used in SetZoom()).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39527 a95241bf-73f2-0310-859d-f6bbb57e9c96
No functional changes, except for the two traces removed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39511 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Renamed everything after WebP, as it turns out the official name is
case-sensitive.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39505 a95241bf-73f2-0310-859d-f6bbb57e9c96
the pointer might already be invalid. Use SessionID instead.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39499 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Use the dialog to open the tab title. Opened on double-click on the tab.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39497 a95241bf-73f2-0310-859d-f6bbb57e9c96
- fix nat_feat_call() macro for more than 1 arg,
- add BOOTSTRAP natfeat calls get_bootdrive() and get_bootargs().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39491 a95241bf-73f2-0310-859d-f6bbb57e9c96
TermView::Listener::{Previous,Next}TermView() methods. All B_COMMAND_KEY
combos are intercepted by the window, so we never get them in the view.
* Added window shortcut Command-Shift-Left/Right to move the tabs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39490 a95241bf-73f2-0310-859d-f6bbb57e9c96
CustomTermView and of the messaging from view to window. It also simplified
things in TermWindow.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39487 a95241bf-73f2-0310-859d-f6bbb57e9c96
should fix bug #6824.
* Don't queue more pictures if we can only use a single CPU, and the queue is
already busy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39486 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Introduced class SessionID to uniquely identify a session. Unlike the indexes
the IDs aren't reused.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39484 a95241bf-73f2-0310-859d-f6bbb57e9c96
a tab.
* TermWindow: Add a new tab on double-click in the tab view's tab-free area.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39481 a95241bf-73f2-0310-859d-f6bbb57e9c96
doesn't belong in SmartTabView to TermWindow. This also allowed to get rid of
TermWindow::TabView.
* Also check for double clicks on tabs. No action attached yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39480 a95241bf-73f2-0310-859d-f6bbb57e9c96
unnecessarily.
* Invalidate the complete tab view after setting a label. Otherwise we'd get
artifacts when the label gets shorter.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39478 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added settings for tab and window titles. Both are strings with optional
placeholders for tab/terminal index, currently active process name and
current directory.
* Added a generic utility class PatternEvaluator that allows to expand this
kind of pattern strings and callback classes
[Tab,Window]TitlePlaceholderMapper that provide the specific expansion for
the tab and window title placeholders.
* TermWindow:
- Separated the notions of session (== tab) and window titles. The tty
clients no longer set the window, but the session title.
- Use the patterns instead of the hard-coded window/tab titles.
- Recompute all titles once a second, so changes of running programs are
reflected.
* The default patterns for tab and window titles are "%1d: %p" (last CWD
component and name of the running process) and "Terminal %i: %t" (Terminal
ID and active tab title). Unfortunately the space on the tabs is seriously
limited, so that the tab title is virtually always truncated. Ideas welcome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39473 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Add untested code to save a SATGroup and to restore a SATGroup.
- Splitting of a SATGroup is now triggered from the WindowArea destructor. This make it easier to restore S&T groups when windows in a group are missing. A group decays automatically in multiple groups when the missing window connected multiple windows.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39461 a95241bf-73f2-0310-859d-f6bbb57e9c96
to that of the active tab. This makes the new terminal inherit it. Implements
the missing part of #6712.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39458 a95241bf-73f2-0310-859d-f6bbb57e9c96
shell.
* Also added a parameter for the current working directory and. If supplied,
it is applied in Shell::_Spawn().
* Pass the current working directory of the active tab when opening a new
tab. Implements part of #6712.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39457 a95241bf-73f2-0310-859d-f6bbb57e9c96
program (after it has been started). What is TTYPE anyway? Google didn't turn
anything up and there are the POSIX locale environment variables anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39456 a95241bf-73f2-0310-859d-f6bbb57e9c96
method GetActiveProcessInfo() to Shell and TermView to get such an info for
the current foreground process group leader. Currently the info only contains
the ID, name, and current directory of the process.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39455 a95241bf-73f2-0310-859d-f6bbb57e9c96
down, we can skip the checks for running processes. At least I found the
alerts seriously annoying in this case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39449 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Made the phrasing consistent: "quit" -> "close", "OK" -> "Close".
* Use a more fitting text when only closing a terminal tab.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39446 a95241bf-73f2-0310-859d-f6bbb57e9c96