Commit Graph

3551 Commits

Author SHA1 Message Date
Axel Dörfler
ddf57b6cf6 * Reverted back to the original version of BNetworkAddress::SetAddress();
in_addr_t is now in network endian again. Thanks, Philippe!
* Made SetToLoopback(), and SetToLocal() a bit more useful (although the latter
  isn't implemented yet).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-18 21:09:21 +00:00
Siarzhuk Zharski
7729a8c8f7 Applied yet another localization patch made by Jorma Karvonen.
Fixes #7151. Thanks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-17 20:01:28 +00:00
Siarzhuk Zharski
720020e0b9 Applied yet another localization patch made by Jorma Karvonen.
Fixes #7005. Thanks.
Exclusions:
- localization of "usage" field of BPropertyInfo rejected - looks like
  it is not displayed to user;
- localization of Sound Event names discarded. The situation is at least
  questionable and should be discussed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-17 19:00:48 +00:00
Philippe Houdoin
cefe2a40f7 * Revert the revert: my local BNetworkAddress::SetAddress(in_addr_t)
was not up-to-date, which leads to a broken fix. Sorry about that.
* Move the details logs to LOG_DEBUG to keep LOG_INFO small.
* Rollback to OPTION_SERVER_ADDRESS, too. Either all options should be
renamed after RFC option names or, as said by axel,
they're named to be understandable, which it was already.

Now, a coffee, please.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 19:58:00 +00:00
Philippe Houdoin
69b5cacbad * BNetworkAddress::SetAddress(in_addr_t) expect a network order value:
revert r40492.
* For semantic sake, use ntoh*() macros to convert data coming from network,
not the hton*() variants, even if the end result is the same.
* Clean and add more details to DHCP syslog messages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 18:29:58 +00:00
Clemens Zeidler
df0ad9c12a Fix account name in mail.
Work in progress: fetch next partial downloaded message.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 02:19:49 +00:00
Axel Dörfler
669afb5012 * This should make DHCP work again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-14 17:36:44 +00:00
Philippe Houdoin
3db9c51d0f Adds support for read or write-only midi devices entries.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 13:19:22 +00:00
Clemens Zeidler
1af4fa4ba6 Major restructuring of the mail server:
Accounts are now stored in a separate file. Previously they where somehow magically assembled from the chain ids. Now its possible to remove a account temporary by removing the account file form the account folder.

Each account could have an inbound protocol, an outbound protocol and some filters.

Mails are now associated with an account and not with a chain. This required to replace the chain id attribute by an account attribute.

Replace BMailFilter and BMailChain by a less general approach. Basically the chain had a list of filters and call the ProcessMailMessage for each filter. This made it sometime difficult to understand what is going on, e.g. sometimes a filter used information gathered by another filters. The new MailProtocol and MailFilter classes are calling more dedicated hook functions, e.g. HeaderFetched or MessageReadyToSend.

As before all MailProtocol's (plus their filters) are running in their own thread.

Cleaned up the error and status window a bit. Abstracted the interface to these windows. Should be easy to write a BNotification api back-end now.

Parsing of mail headers is much faster now. Fetching the headers of a large mailbox takes ~min and not ~hour now! Initial checkout time is in the same order like Opera. The problem was the massive use of fgets in parse_header (mail_util.cpp) now the complete header is read in one go. Furthermore, only interesting fields are extracted.

Remove some unused files, BeOS relicts... Feel free to translate the mail server and remove the own language system (headers/private/mail/MDRLanguage.h).

Sorry for the remaining old (and new) coding style issues, sometime just ignore them, to many :(



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 01:49:01 +00:00
Stephan Aßmus
17925a3529 * The app_server leaked the BGradient objects on each drawing operation
related to gradients. This was for example very noticeable when running
   MediaPlayer which redraws the slider a lot. With three movies running,
   app_server would leak at about 100KiB per second.
Might be related to #7071 or even fix it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-06 10:25:06 +00:00
Jérôme Duval
c9f72f4333 Applied patch from stimut (#6353), thanks!
In ServerWindow::_DispatchViewDrawingMessage(), for AS_DRAW_STRING_WITH_OFFSETS,
the string length rather than the number of UTF8 glyphs is used, thus leading
to an app_server crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-28 19:34:37 +00:00
Oliver Tappe
915a7b8c24 Make BObjectList<> publically available:
* cleaned up ObjectList.h
* switched several uses of new() to new(std::nothrow)
* moved ugly AsBList() hack into BObjectList<>::Private class and
  adjusted all callers accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-20 12:09:16 +00:00
Philippe Houdoin
26119abd20 Port value in servent struct is in network byte order.
This was making net_server listening wrong service port. Telnet & FTP
works again in non stand-alone mode.
This close #7108.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-17 17:50:31 +00:00
Alex Wilson
6420e23bca Patch by Hamish Morrison in bluetooth server: simplify code in the bluetooth console 'Output' class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-15 06:36:18 +00:00
Alex Wilson
983dbb974b Patch by Hamish Morrison as part of GCI. Refactor Bluetooth server output window gui code to use the Layout API. One small change by me as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-11 18:09:19 +00:00
Oliver Tappe
afd785cf43 * fix build of app-server in debug mode - thanks to Timothy Brown
(stimut) for the hint that it was broken

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-10 13:37:45 +00:00
Michael Lotz
427427bc82 Create uncached glyphs on demand instead of checking glyph availability upfront.
This safes a HasGlyphs() call which would convert the whole string to glyph
codes and look each of the glyphs up in the cache entry, just to do the same
again during the loop where they are actually used. Instead we now simply switch
to the write lock and look up the fallback entry when hitting the first uncached
glyph. This benefits the normal case of having all glyphs cached without any
drawbacks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 21:24:09 +00:00
Michael Lotz
5c89315772 Implement missing glyph handling, making the glyph retrieval the following:
1. If the glyph is cached, return it, as before.
2. Try to find a glyph in the fallback font, as before.
3. Check for ignorable characters as per Unicode and cache and return a zero
   width glyph (rendering as completely invisible).
4. Reset to the original font.
5. Check for whitespace as per Unicode and cache and return the normal space
   glyph.
6. If there still is no valid glyphIndex, continue with index 0 which caches
   and returns the usual "missing glyph box".

This implements the Unicode suggestions on how to handle missing glyphs and
closes #7077.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 04:10:13 +00:00
Michael Lotz
2004d8c100 LayoutGlyphs() was broken in various ways when encountering missing glyphs:
* The code used continue to restart the loop when encountering a missing glyph,
  but in that case the index wouldn't be incremented, meaning the consumers
  would received the same index for ConsumeEmptyGlphy() and ConsumeGlyph() and
  at the end there was not necessarily a call for every index, resulting in
  uninitialized array elements for GetHasGlyphs, GetEdges, GetEscapements and
  GetBoundingBoxes.
* Since the advance values were not reset in case of a missing glyph but still
  added for the next char, the coordinates the consumers would get were advanced
  by the advance values of the glyph preceeding the missing glyph(s). This made
  StringWidth return wrong widths.
* The loop end condition was skipped by the continue as well, which would have
  resulted in overruns when there were problematic chars at the end of a string.

Fixes #7075 where the uninitialized array elements caused random truncation
errors. The problematic character in this case is a tab, that has no glyph as
it is a dynamic spacer. Previously this was resolved to the "missing glyph"
(the box) which had a width.

I find it highly problematic not to fall back to such a glyph, because there is
no real way to see that you're using a font that has missing glyphs. Instead
those are simply collapsed to nothing with this change (instead of being
random). This whole problem is only brought up by not guaranteeing that there
always is a glyph as was the case before where a missing glyph was replaced by
the box.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 23:17:18 +00:00
Rene Gollent
5c9b247667 The cmd+` shortcut wasn't taking into account if the user was currently holding a
window with the mouse, and as such didn't take it along to the new workspace
as the cmd+F# shortcuts do. Fixes #7057.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-02 16:04:15 +00:00
Ingo Weinhold
7e36984164 Removed Humdinger's resize mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-02 00:29:17 +00:00
Michael Lotz
c3dab48ba4 Add a way to cancel a started message.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-29 08:30:25 +00:00
Michael Lotz
49e57f098a Add support for the screen offset and scale to remote shape drawing. This brings
back scrollbar icons and menu markers for example after they got broken when
the offset was introduced.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-29 08:19:59 +00:00
Michael Lotz
7162595e84 Implement a new RP_DRAW_BITMAP_RECTS which splits up bitmaps to be sent into the
relevant parts (i.e. removes clipped or out of bounds parts) and does local
scaling in case the view rect is smaller than the bitmap rect. This avoids
sending the full blown bitmaps across when they are in the end scaled to a much
smaller representation. It's nowhere near perfect yet, but it's useable and
improves the network traffic heaviness quite a bit depending on the application.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-29 07:03:03 +00:00
Michael Lotz
8e164a0fe2 Add way to add a "minimal" bitmap without colorspace/flags for adding multiple
similar bitmaps.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 22:17:28 +00:00
Michael Lotz
645e9fe135 Cleanup which should've been part of r39972.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 22:12:13 +00:00
Michael Lotz
1c3680d302 Allow creating a BitmapDrawingEngine with a specific colorspace.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 22:08:46 +00:00
Michael Pfeiffer
737e45854e * As pointed out by Rene the buffer size in snprintf
includes the 0-terminator.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 21:24:58 +00:00
Michael Pfeiffer
fdee209b00 * CID 10260: member variable fIconSize was not initialized
in error case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39994 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 21:14:25 +00:00
Michael Pfeiffer
a17b8132ed * CID 10260: member variable fDefaultPrinter was not
initialized in constructor in error case


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 21:12:17 +00:00
Michael Pfeiffer
e923359460 * CID 7969: defensive programming: use snprintf instead of sprintf.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39992 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 21:06:29 +00:00
Michael Lotz
5c3457dd22 CID 7961: Use snprintf with proper sizes to make sure nothing overflows.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 16:52:29 +00:00
Michael Lotz
edcbc5b0e3 CID 5889: The bytes array was leaked.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 16:44:24 +00:00
Michael Lotz
5327be44ec Remove unused members. Also resolves CID 10230 that complained about them not
being initialized.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 16:22:29 +00:00
Michael Lotz
aa8219391f Someone forgot to initialize fUpdate15 and fColor15 when adding 15bit color
support some 7 years ago...
CID 10246, 10245, 10244, 9471, 9454 and 9453 all concerning that (in the
different constructors / assignements).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 15:59:07 +00:00
Michael Lotz
8e165582f1 CID 10229: fDraggingMessage was not initialized, potentially sending out drag
messages where there shouldn't have been any.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 13:04:43 +00:00
Michael Lotz
d65593aaa3 CID 1420: fTargetScreen was leaked.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 12:59:14 +00:00
Michael Lotz
673481f371 CID 2502: Check the FindMessage return which also safes a needless FindRect call
in the error case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 12:55:19 +00:00
Michael Lotz
951366c59d CID 10231: Remove unused fInputPort member and initilize fShutdownCount, even
though it's used only in the special case of running as BApplication.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 12:47:22 +00:00
Fredrik Holmqvist
2f32c12f37 Delete the array after deleting the items in the array. CID 2980.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 10:46:42 +00:00
Michael Lotz
56c393e396 Cleanup, no functional change intended. Style, line length, early returns,
variable names, added TODO, variable declaration on first use, simplify some
code, add missing sanity checks...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 02:05:35 +00:00
Michael Lotz
25702ce874 * Use std::nothrow and check the bitmap/cursor allocations.
* CID 2500 and 2501: Check the BMessage::FindData() returns.
* Defensive programming: Take the bitmap/cursor BitsLength() into account when
  copying the data back.
* Some style cleanup, automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 01:19:47 +00:00
Michael Lotz
83e36298a5 CID 2977: Use the array delete operator.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 01:00:27 +00:00
Michael Lotz
174a961e22 CID 5885: Resource leak in error case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-28 00:55:17 +00:00
Michael Lotz
5377c49be4 CID 4383 and 4384: Fix wrong checks of index values against kMaxWorkspaces that
could otherwise lead to out of bound access.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-24 02:20:33 +00:00
Michael Lotz
2e3c20430a CID 4091: fTabOffset is unsigned so the < 0 comparison makes no sense.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-24 02:08:54 +00:00
Michael Lotz
95e95fee39 * CID 10247: Initialize those two members. Didn't do any harm since they depend
on a set view bitmap and are set when setting one.
* We can safe that resize_frame() call in case no view bitmap is set.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39931 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-24 01:40:36 +00:00
Michael Lotz
3b1679f9c5 * CID 8120: The size supplied to the attach call was the one of the pointer, so
the data was never correctly attached.
* CID 5886 and 5887: escapements and offsets were not freed in the error case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-24 01:13:28 +00:00
Michael Lotz
e910a0a3b7 CID 4186: The glyph_index is unsigned, so a >= 0 comparison is always true. The
"empty glyph index" as per freetype (which is eventually called) actually is 0,
so a != 0 comparison should be correct. Untested though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-24 00:58:57 +00:00
Philippe Houdoin
7dd47a9be5 Fix off by one iconRect sizes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39914 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-21 10:12:34 +00:00
Philippe Houdoin
bdde2d307a Removed bilinear filter, as it was blurring all icons (and bitmap icons are
already rendered with a filter).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-20 17:31:27 +00:00
Ingo Weinhold
756b64fd83 * Removed the obsolescent [B]Reference[able] API and replaced the remaining
uses. Fixes the gcc 2 acpi build.
* Renamed WeakReferenceable::{Add,Remove}Reference() to
  {Acquire,Release}Reference() for consistency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-16 16:35:42 +00:00
Axel Dörfler
98e25dc3f9 * The net_server now tries to join the network via wpa_supplicant, if available.
* Add some output when automatically joining a network.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-14 20:22:18 +00:00
Axel Dörfler
c64bdbb55d * Moved the network definitions into their own file "wireless_networks".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-13 22:24:39 +00:00
Axel Dörfler
9e124835e2 * Turned on automatically joining a network even if none has been configured.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-13 21:35:35 +00:00
Philippe Houdoin
fda6d9ab6f As suggested by Rene and Jerome, switch to BDirectory::Contains(),
which is way cleaner.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-10 15:48:05 +00:00
Philippe Houdoin
784263e28a Fixed a bug that would have considered /boot/trashy_file be in /boot/trash.
Spotted by Rene, thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39805 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-10 15:26:27 +00:00
Philippe Houdoin
1e4538de6f Don't send a mail entry located in trash folder.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39804 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-10 14:43:44 +00:00
Axel Dörfler
72a249a942 * Added some authentication config stuff to the settings. Now you can override
the detected defaults with your own values.
* Implemented joining open and WEP networks - this is pretty much untested,
  though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-09 23:44:36 +00:00
Axel Dörfler
0bf128487a * Work in progress of WLAN support in the net_server.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-09 00:11:15 +00:00
Axel Dörfler
f76ac72459 * Fixed a typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-09 00:09:51 +00:00
Ingo Weinhold
078e1762a3 AddOnManager::MessageReceived(): ERROR() -> TRACE()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-08 18:34:54 +00:00
Oliver Ruiz Dorantes
cdd9fd4da1 Styling from GCI task
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-08 17:40:29 +00:00
Clemens Zeidler
83cdf43f09 - Give the option for the desktop listener to "absorb" key events.
- Make the S&T groups navigateable by pressing the S&T key + arrow down/up. Arrow down means to send the active S&T group to the bottom. Arrow up means to rise the bottom S&T group to the front. If no S&T group is selected, in both cases the front-most S&T group is activated.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-06 23:15:15 +00:00
Stephan Aßmus
ea8a421c0c Run the AddOnManager after having loaded add-ons on the InputServer
thread. After fixing the internal locking of AddOnMonitorHandler in
r38235, running the AddOnManager before scanning add-ons could lead
to a dead-lock in case devices appeared while the input_server was
still initializing. This hopefully fixes #6760 and possibly also
#6819. I've tested in both qemu and on real hardware (quad-core with
3 mice, one tablet and 3 keyboards connected). I've also tested
hot-plugging devices, which still works as expected. The problem may
have already been fixed in the preceding changeset, by elliminating
an extra involved looper. Since node monitor messages were actually
received on the wrong looper, using the looper lock in AddOnManager
did not have the intended effects.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-05 15:10:50 +00:00
Stephan Aßmus
509a3787b1 Eliminate the second add-on monitor looper by inheriting AddOnManger
from AddOnMonitor. This solves a concurrency problem in the AddOnMonitorHandler
implementation which called into AddOnManager private methods on the wrong
looper thread without locking. Would have corrupted memory when unplugging
input devices during input_server initialization (so normally not encountered).
The code paths for adding devices were locking already, since those can be
called from other threads as well and this was anticipated.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-05 15:03:11 +00:00
Michael Pfeiffer
0e216008df * Made printing related windows close on pressing the
Escape key.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-05 12:34:09 +00:00
Stephan Aßmus
1f1db8cf7e Brought the public methods in declaration order.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39735 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-05 11:54:38 +00:00
Michael Pfeiffer
081615cbf7 Reverted wrong typo fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-03 11:25:34 +00:00
Michael Pfeiffer
d222eb7942 Changed wording and fixed typo (ticket #6945).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-03 10:46:20 +00:00
Clemens Zeidler
92998b409f Take the window when dragging the window and switching the workspace using the cmd + F1-12. Thanks Ingo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-02 22:04:10 +00:00
Philippe Houdoin
dd1ebc6885 In Humdinger-resize mode, don't fall back to drag action when the window is not resizable.
Just do nothing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-02 22:01:41 +00:00
Clemens Zeidler
dc2dd40caa Fix #6925 and #6935.
- If the event window was set the window was moved also if the moveFocusWindow flag was not set.
- Use ProcessDirtyRegion to redraw the dirty region.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-02 20:51:38 +00:00
Philippe Houdoin
8490a52529 Added some resizable checks that were missing.
Now, borders that can be resize are not highlight anymore,
and it's no more possible to resize a non-resizable
(vertical/horizontal/all directions) window with the third button + CMD + ALT.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39705 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-02 18:12:18 +00:00
Clemens Zeidler
a54ffcd265 Don't redraw decorator region if the highlight colour has not changed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-02 00:58:39 +00:00
Philippe Houdoin
2115850c7e Fixed a typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-01 14:35:51 +00:00
Ingo Weinhold
9f1aca35af Implemented Humdinger's resizing method, activated on Cmd-Ctrl-middle-click.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39656 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 21:36:45 +00:00
Ingo Weinhold
97d623045e ResizeBorderState: Set a suitable mouse cursor.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 20:29:10 +00:00
Ingo Weinhold
8689fe066a Added method SetManagementCursor() that allows to set a cursor that overrides
the normal cursor set with SetCursor(). Intended for window management
interactions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39653 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 20:25:57 +00:00
Ingo Weinhold
006f748565 * Got rid of DefaultWindowBehaviour::Region again. Since we also need to
discriminate between the different borders and corners, there wasn't much
  difference between it and Decorator::Region anymore and we can as well use
  the latter.
* Added new state ManageWindowState which is entered when the mouse is over the
  window and the window management modifiers are held down. When being in this
  state the borders that will be resized when pressing the right mouse button
  are highlighted.
* Added State::ExitState() hook for cleanup work.
* _NextState() does now call Desktop::SetMouseEventWindow() for our window when
  entering a new state, respectively resets it when going stateless.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39652 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 18:28:52 +00:00
Ingo Weinhold
92fe8be943 * ExtendDirtyRegion(): The left and right border rects don't include the
corners. Make sure they are added as well.
* GetComponentColors(): Added support for HIGHLIGHT_RESIZE_BORDER. We simply
  shift the standard colors towards blue. Improvements welcome.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39651 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 18:17:34 +00:00
Philippe Houdoin
d5d2fdf0b3 * Renamed some option to match more RFC2132 names
* dhcp_message::NextOption() now set cookie.next to NULL on exit if there is no space left
* dhcp_message::Size() now handle OPTION_OVERLOAD case
* Renamed _ToString() to _AddressToString()
* Any error message send by DHCP server will show up in syslog now
* Reorganize DHCPClient::_PrepareMessage() to make more easy to see which
  option is added per message type.
* OPTION_SERVER_ADDRESS was always added to DHCP_REQUEST, which MUST NOT
  in renewal and rebinding state according RFC 2131.
* add device name to resolver configuration: WIP for #6915...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 17:11:22 +00:00
Ingo Weinhold
37ba7e5389 Flush the bitmap caches for the zoom and close button, when their hightlight
changes. Fixes that the buttons were not drawn with the right color when the
S&T tab highlight was active.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39648 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 14:52:56 +00:00
Ingo Weinhold
003b80f0bb Fixed gcc 2 warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39645 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 13:24:10 +00:00
Ingo Weinhold
2b602c7364 * Decorator:
- Added ExtendDirtyRegion(), given a decorator region it extends the given
    dirty region. Implemented only in DefaultDecorator yet.
  - Added [Set]RegionHighlight() which allows to set/get a highlight for a
    decorator region. The visual representation of the set highlight value
    is up to the derived classes. The only globally defined value is
    HIGHLIGHT_RESIZE_BORDER, though it's not implemented anywhere yet.
* DefaultDecorator: Added the highlight for the component as a parameter to
  GetComponentColors(). Added a wrapper _GetComponentColors() with the old
  interface, fetching the highlight from the base class.
* SATDecorator: Defines and interprets its own highlight value
  HIGHLIGHT_STACK_AND_TILE.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 01:03:27 +00:00
Ingo Weinhold
06aa76e216 DefaultDecorator(/SATDecorator):
* Use a separate color array for the buttons, instead of using that for the
  tab.
* _DrawBlendedRect(): No longer gets the focus flag, but gets a color array
  instead.
* _GetBitmapForButton(): Made non-static and removed the "focus" and "object"
  parameters.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 23:23:08 +00:00
Ingo Weinhold
09b19da8c2 Introduced enum DefaultDecorator::Component to refer to the components of the
default decorator and used it instead of Decorator::Region where appropriate
(GetComponentColors(), _GetBitmapForButton()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 22:42:21 +00:00
Ingo Weinhold
e3ab8648d1 * DefaultDecorator:
- Introduced a virtual GetComponentColors(), that returns an array with the
    current colors for the specified component.
  - Removed all rgb_color members. Replaced the ones that were actually
    constant by const (or static const) ones and made use of
    GetComponentColors() where the non-constant ones were used.
* SATDecorator:
  - Turned rgb_color members into constants and added an overriding version
    of GetComponentColors().
  - HighlightBorders(): Invalidate the tab, too, as we use the border
    colors for drawing the outer lines of the tab (was this intented?).
    Fixes artifacts when breaking apart titled windows.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39630 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 20:07:32 +00:00
Ingo Weinhold
2ee2a8ede4 In FFM mode always update the focus in MouseMoved() regardless of the state.
I broke that with r39608.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39629 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 16:41:22 +00:00
Ingo Weinhold
7ca71ab6a2 * DefaultDecorator: Moved the button drawing from _DrawTab() to the new
virtual DrawButtons().
* SATDecorator: Override DrawButtons() instead of _DrawTab(), thus saving a
  good deal of code duplication.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 15:01:30 +00:00
Ingo Weinhold
e29729e2a5 Removed first of two consecutive assignments to fNonFocusFrameColors[1].
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 14:37:17 +00:00
Ingo Weinhold
427788e06f * Extended the Desktop's MouseFilter to reset the mouse-down messages' "clicks"
field. It does that when the modifiers, the pressed buttons, or the click
  target changes between the clicks, or when the distance between the click
  points is >= four pixels.
* Adjusted the Window::MouseDown() and WindowBehavior::MouseDown() interfaces
  and implementation accordingly (we now also pass and return click count and
  click targets).
* Removed the no longer need multi-click handling from DefaultWindowBehaviour.

Fixes #6841 and #6867.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 04:03:47 +00:00
Ingo Weinhold
76107eeb11 Added ModifiersChanged() hook to Window and [Default]WindowBehavior.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-25 00:38:32 +00:00
Ingo Weinhold
b509dbd998 Removed unused _SetColors().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39619 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 23:17:31 +00:00
Ingo Weinhold
b3b7517070 Coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 22:55:57 +00:00
Ingo Weinhold
4e5bf97339 DefaultWindowBehaviour::MouseDown(): Reorganized the region checks. Instead of
checking the mouse button in every case, use separate switches for the
buttons. Makes things easier to read.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 21:31:05 +00:00
Ingo Weinhold
7cf8907453 Added new state ResizeBorderState, activated by right click on the decorator
or Cmd-Ctrl-right-click anywhere. Introduces the following behavioral changes:
* The send-to-back effect is triggered on mouse-up now. It expires after a
  short time of holding the button or moving the mouse, just like the
  activation effect on left-click in FFM mode.
* Depending on where the mouse was pressed, moving it will move the closest
  border or corner with it, thus resizing the window. The algorithm choosing
  the border/corner needs refinement. Currently the window is divided into 8
  equally sized sectors corresponding to the borders/corners.

Work in progress...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 21:22:13 +00:00
Ingo Weinhold
0fd5329656 * Removed click_type enum. Introduced a private Action enum in
DefaultWindowBehavior instead. DefaultDecorator uses the more appropriate
  Decorator::Region.
* DefaultWindowBehavior::MouseTrackingState: Generalized the fActivateOnMouseUp
  handling. It is now named fWindowActionOnMouseUp and the virtual method
  MouseUpWindowAction() is called.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 18:34:40 +00:00
Philippe Houdoin
ce36f05450 Comments polishing, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 18:04:27 +00:00
Ingo Weinhold
5bbbdc9182 Fixed typo. Spotted by korli.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 16:51:34 +00:00
Ingo Weinhold
98c0eab3d4 Fixed another regression introduced in r39602: Reset the click count when a
different region has been clicked since the last click.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 16:38:31 +00:00
Ingo Weinhold
5116393fb9 MouseDown(): Also check whether the buttons pressed have changed since the
last click and reset the click count, if so. Fixes a regression introduced in
r39602 (left-click after right-click was recognized as double-click).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 16:25:12 +00:00
Ingo Weinhold
52cac2e7a4 * Refactored the MouseMoved(), MouseUp(), and part of the MouseDown() code
into newly introduced state classes.
* Fixed the right-click-while dragging behavior, I broke in r39602.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 16:17:32 +00:00
Philippe Houdoin
fb4527d22e * Use SetToWildcard() to init the local address.
* Implement OPTION_OVERLOAD support in dhcp_message::NextOption(). Untested.
* Comment out an ASSERT which don't compile in DEBUG mode (and make no sense for me, BTW)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39607 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 14:50:07 +00:00
Ingo Weinhold
89d652d5e0 * Decorator: Replaced the MouseAction() method with a new RegionAt().
RegionAt() just gets a point and returns which region was hit. This is in
  order to move behavioral code to [Default]WindowBehaviour. I'm not happy
  with this solution either, but to do it properly one would have to break the
  Decorator interface into separate look and feel interfaces and reorganize the
  interaction with WindowBehaviour. A task for the so-inclined reader. :-)
* Adjusted the Decorators implementations, but really tested only the default
  one.
* DefaultWindowBehaviour:
  - Replaced _ActionFor() method by a _RegionFor() which interprets the region
    returned by Decorator::RegionAt() and converts it to a "functional" region,
    i.e. combines cases we handle the same way.
  - MouseDown():
    - Handle the click region cases more in detail, disentangling the mouse
      button cases. With the following effects:
      - The middle mouse button has no effect anymore.
      - Left and right mouse buttons no longer share common behavior. A right
        click on a decorator button will send the window to the back.
    - The window key window management modifier combo does now have precedence,
      i.e. Cmd-Ctrl-click on the decorator buttons will have the same effect as
      clicking anywhere in the window.
    - When modifiers change between the clicks, reset the click count. Prevents
      a standard click in the window followed by a Cmd-Ctrl-click from being
      recognized as a double-click.
  - Mouse*(): Introduced a fMinimizeCheckOnMouseUp which works similar to
    fActivateOnMouseUp, just for double-clicks. The decision whether a
    double-click minimizes the window is postponed until releasing the mouse
    button. After moving the mouse sufficiently far or waiting half a second
    without moving the mouse the window will no longer be minimized. Fixes
    #6868.
  - MouseUp(): Moved the primary mouse button check without the
    "decorator != NULL" block. I suppose this fixes issues with the Cmd-Ctrl
    actions and decoratorless windows (if those actually exist).

I can't wait to hear what things I've broken. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 02:09:50 +00:00
Axel Dörfler
6d3838e37c * Don't overwrite the family if it is being passed as int32.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 22:20:11 +00:00
Axel Dörfler
e3feb1f8af * Added a new AS_DUMP_BITMAPS command.
* Extended app_server_debug command to be able to send it, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 21:50:12 +00:00
Axel Dörfler
ee72532a7a * Implemented deleting completely empty chunks.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 21:48:32 +00:00
Axel Dörfler
60fed7e077 * Moved the shared part of NetServer.h into a new private header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 21:44:37 +00:00
Axel Dörfler
4ac660519e * Improved syslog output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 21:25:09 +00:00
Axel Dörfler
af0745618f * Now uses the new network API instead of directly using socket ioctls.
This makes the code much cleaner and simpler.
* Completely untested, though (will do that next).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 21:11:04 +00:00
Clemens Zeidler
9ff327dea3 - Make MessageForListener a bit more flexible, passing a fix ServerLink is sometimes not enough and a separate sender and receiver is needed.
- 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
2010-11-20 06:47:20 +00:00
Axel Dörfler
1d219b3a25 * Added AS_DUMP_ALLOCATOR command that dumps an applications memory allocator to
the syslog/serial output.
* Added app_server_debug command that currently just sends this command to the
  specified teams.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-15 21:25:03 +00:00
Axel Dörfler
128f46a034 * Automatic whitespace cleanup, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-15 21:23:38 +00:00
Axel Dörfler
da6b5d6d3f * Cleanup, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-15 19:35:43 +00:00
Clemens Zeidler
f1c707c4a2 - Fix a TODO: get the border width and tab height directly from the decorator and don't use hard coded values. For example, you can tile tab less windows probably together now.
- Only use min size constraints now. If there is a clash between a window with a max size and another window with a min size the max size is ignored and the size is enlarged if needed. When removing this window from a S&T group the old size limit is restored.
Same is done for none resizeable windows.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-15 02:54:15 +00:00
Stephan Aßmus
506a7b97c1 Prevent the shutdown dialog from minimizing without an entry
in Deskbar (registrar is a background application). Fixes ticket
#6809.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-10 10:51:47 +00:00
Michael Pfeiffer
9b07d9f0fe * Renamed files, classes and constants from
PrintServerAddOn to PrintAddOnServer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-08 18:43:55 +00:00
Michael Pfeiffer
112cf45c66 * On image renamed print_server_add_on to print_addon_server
and moved it from folder bin to servers.
  The print_server uses print_addon_server now to
  execute printer driver add-ons.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-08 18:34:43 +00:00
Michael Pfeiffer
f0de36acbb * Moved print_server_add_on from bin to servers folder
and renamed it to print_addon as suggested by Axel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-08 17:46:16 +00:00
Philippe Houdoin
4772e0b22e Fixed a typo. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-08 14:46:05 +00:00
Michael Pfeiffer
61729fe266 * Added application print_server_add_on that is used
by the print_server to run a printer driver add-on.
  This makes the print_server
  1) resistant to add-on crashes
  2) and memory leaks in add-ons
  3) license of an add-on cannot influence the
     license of the print_server since it does not
     directly load the add-on anymore; might be
     an issue with GPL printer drivers like Gutenprint
 
  Transport add-ons directly loaded by the print_server
  should be moved outside the print_server too.
  Right now I am not aware that the transport add-ons
  in the repository have any of the issues.
  The Gutenprint driver has 2 + 3 that was the main
  motivation to implement that now. 

  Disabled for now until the launch issue is resolved.
  BRoster does not find the application by its
  signature until it is opened in Tracker once.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-07 17:13:55 +00:00
Michael Pfeiffer
6ddd8057e6 * Moved printer driver add-on loading and hook function
invocation code from class Printer into new class
  PrinterDriverAddOn.
  Refactored code a little bit.
* Removed duplicate code from class PrintServerApp
  and use methods from class Printer instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-06 10:17:13 +00:00
Clemens Zeidler
75eef8892f Make gcc2 happy and give the VolumeWatcher BLooper a name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-29 13:04:38 +00:00
Clemens Zeidler
c90684742e Rename index_server to index as pointed out by Philippe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-28 21:21:40 +00:00
Clemens Zeidler
4462ce0d83 - The purpose of the SwapEntryRefVector is to exchange entry_ref's between the watcher thread and the worker thread. The idea is to use two list, the first list is filled by the watcher and the second is passed to the worker. When the worker finished both lists are swapped. This was totally broken, the list swap was not locked and SwapList always returned the wrong list.
- Use BAutolock class.
- Write the correct sync time in micro seconds.
- Fix the event dispatching in the worker thread.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-28 15:11:02 +00:00
Clemens Zeidler
1294543de9 Initial work on an index server. No add-on yet so quite useless at the moment, but a clucent full-text search add-on is coming soon.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-27 13:55:45 +00:00
Stephan Aßmus
43eea4c2c4 Apparently it does not work... convert to TODO.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-23 22:56:50 +00:00
Stephan Aßmus
76d9e05341 Introduce a new flag for drawing BBitmaps, B_WAIT_FOR_RETRACE
which triggers waiting on the retrace semaphore in app_server
just before drawing the bitmap. This potentially removes any
additional delay when doing this client side. Completely untested. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-23 22:22:45 +00:00
Stephan Aßmus
ed55cb5a22 Cache the retrace semaphore. Use the right kind of locking
in the method that needs it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-23 22:19:43 +00:00
Axel Dörfler
2e52bd7b8c * The default decorator now remembers its last mouse down action, and only
recognizes a double click as double click if the action didn't change.
* This fixes bug #6699.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39064 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-23 11:41:40 +00:00
Michael Pfeiffer
5a695bce10 * Use layout API in libprint dialogs.
* Use layout API in preview printer add-on.
* Use layout API in some dialogs in PDF Writer.
* Removed unused class PrinterSetupWindow from PDF Writer.
* Improved layout in print_server configuration dialog.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-16 19:56:34 +00:00
Stephan Aßmus
9d570aa4dd Some drawing mode implementations actually use the color
passed to the pixel format methods. Don't use a dummy color
for drawing dots. (Untested, but should fix Clockwerk time
line objects drawing)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-12 09:48:12 +00:00
Jérôme Duval
39eb6571be registrar: Actually checks if the app is running before asking it to quit, iterates until finding a valid app.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-08 20:06:51 +00:00
Stephan Aßmus
619ccfae94 * Removed a line of long-dead code.
* Make sure that turning off anti-aliased font rendering
   also works when subpixel-anti-aliasing is used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38831 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-28 10:33:51 +00:00
Clemens Zeidler
7306ba0448 Watch the window look and remove a window from a S&T group if the look changed to B_NO_BORDER_WINDOW_LOOK.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 21:46:42 +00:00
Clemens Zeidler
08a79ab22c Fix size limits function name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 20:22:49 +00:00
Clemens Zeidler
dcbc4af5d1 - Add size limit changes to the listener interface.
- Update size limit constraints in S&T only if necessary.
- Header style fixes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-17 04:04:02 +00:00
Rene Gollent
697e029919 Fix app_server build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-12 15:25:03 +00:00
Clemens Zeidler
cd4692196c Revert my last changes for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 02:52:33 +00:00
Stephan Aßmus
4177bfe69f * AppendPicture() and RemovePicture() are weird, since
the ServerPicture calls those itself from SetOwner().
  Since there are asserts in ServerPicture about fOwner,
  it was easiest to fix the code by using *only* SetOwner()
  from within ServerApp to add or remove pictures.
* SetOwner() was broken, since it called a method which
  potentially removed the last reference and then still
  accessed memory of the now free'd ServerPicture instance.
  The easiest fix is to just increase the reference count
  temporarily.
* SetOwner() wrongly returned false when the new owner was NULL.
* NestPicture() should simply add it's own reference. There
  are two places where it is called, and only one of them
  added the extra reference. The other one only acquired the
  implicit reference that the ServerApp owns, but pictures
  that remove nested children remove a reference from them.
  This could leave stale pointers around of course.
* Added more asserts about fOwner.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-31 22:07:50 +00:00
Stephan Aßmus
5911196b9c Reading the contents of the screen requires the exclusive lock
to avoid someone drawing into it at the same time. In a debug
build, this avoids hitting an ASSERT.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-31 11:45:53 +00:00
Stephan Aßmus
45db9a2073 Made the logic behind the locking in the outer and inner
message loop more clear, both in the code and also via
comments. I get the occasional drop into the debugger
because MultiLocker says the Readlock has been acquired
twice. I don't see how it is possible from the code and
it could be another bug in the MultiLocker debugging
facilities, but the code should be clearer now anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-31 11:19:23 +00:00
Clemens Zeidler
d4272f888e Fix SendWindowBehind. It now sets the window layer position behind the specified window. If behindOf is NULL it is send to the bottom. Please review if it really was broken! At least it has not worked as I had expected and what I read from bebook.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-31 02:04:46 +00:00
Axel Dörfler
4cdd7099dc * Fixed a potential crash (partition may be NULL). This fixes CID 1544.
* Added missing authors.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-30 20:47:22 +00:00
Stephan Aßmus
672397ba1a The list of Reader plugins will also not remain sorted,
the same mechanism needs to be applied as for Decoders,
so that user add-ons are always found before system
add-ons.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-25 22:27:12 +00:00
Stephan Aßmus
593d6e6786 Removed debug output which would get annoying soon.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-25 09:10:21 +00:00
Stephan Aßmus
b707be21d2 Fixed copy'n'paste bug: _FindDecoder returned B_ERROR went it was supposed
to return false. This happened when searching decoders in
/boot/common/add-ons/media/plugins, which does not exist on a default image
and thus broke finding *any* decoder, it only worked when you had some in
/boot/home/config/add-ons/media/plugins... sorry and thanks Alex Wilson
for the heads up!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-25 09:09:18 +00:00
Stephan Aßmus
854ac70a95 * When unregistering plugins, decoders specifically,
we need to remove its globally registered formats
   from the FormatManager.
 * When searching decoders for a given format, we need
   to search by add-on directory, since the decoder
   list will not stay sorted once some have been removed
   or added after the initial add-on scan.

These fixes make it finally possible to rebuild media
plugins and have the media_server pick up the changes
without needing a restart.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 17:46:11 +00:00
Stephan Aßmus
424faefd92 Added RemoveFormat(), the FormatManager was previously
missing any way to remove previously registered formats.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 17:43:13 +00:00
Stephan Aßmus
f242acd5a0 Fixed a race condition in MultiLocker, when compiled in DEBUG mode:
The fWriterThread and fWriterStackBase were reset in WriteUnlock()
without holding any lock. While running a DEBUG compile of app_server,
I ran repeatedly into an assertion in the mouse event thread, that
it was not the write lock holder anymore when calling WriteUnlock().
My theory (also discussed with Axel, thanks!) is as this: Some random
thread holds the write-lock. The mouse event thread is allowed to run
when that thread releases the write-lock, but the thread is rescheduled
before it resets the write-lock-holder values (B_DO_NOT_RESCHEDULE only
means rescheduling is not forced, but it may happen anyway). Then the
mouse thread runs, acquires the write-lock, sometime later the original
thread continues to run, and completes WriteUnlock() with resetting the
holder values. When the mouse thread continues to run and eventually
calls WriteUnlock(), the holder values do not match anymore. The theory
is further confirmed by the fact, that fWriterThread was always -1 in the
assert and not some random other thread.

As mentioned, only affected DEBUG builds of app_server, in release builds,
another lock protects the holder values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 13:46:48 +00:00
Stephan Aßmus
45b9ce0cd3 * It's easier if we deal with just entry_refs instead of converting
to BEntry and back to entry_ref. This ommits a check to
   BEntry::InitCheck(), but AddOnMonitor should pass us only valid
   entry_refs.
 * Removed no longer valid TODO.

TODO: There is still some problem with reloading add-ons, once they have
been reloaded, they fail to instantiate properly, as if the entry_ref
is pointing to the wrong node.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 09:46:55 +00:00
Stephan Aßmus
8e7b93278e * Turn a lot of printf()s into TRACE()s.
* Converted apparently non-fatal error output into TRACE output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 09:44:10 +00:00
Stephan Aßmus
19cd5c15d2 The media_server supports updates to add-ons now.
It unloads any media_format mappings when an add-on
becomes unavailable, and consequently reloads the
supported formats and similar when the same add-on
becomes available again. Previously it would only
load previously unkown add-ons by node-monitor
events (unkown name). What also works is that user
add-ons shadow/hide system add-ons when installed,
and the system add-on will become effective immediately
when removing the user add-on again. One thing to
note is that certain IDs will not stay consistent.
I am not aware of an application for which it could
be a problem, most should rememeber codecs by name.
In any case, I only tested add-on events a lot, and
not so much the effects of unstable media_file_format
IDs, so it's possible there are regressions, though
only when installing new versions of add-ons, which
previously mostly required a media_server restart
anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 19:59:37 +00:00
Oliver Tappe
269ebc04b9 Fix #6373, second try
* make BDADDR_* macros refer to value types instead of addresses
* adjust all interfaces using bdaddr_t* to use (mostly const) refs instead,
  which IMHO makes the interface & code clearer
* that got rid of a couple of const incorrectness casts
* some cleanup along the way


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 15:29:02 +00:00
Stephan Aßmus
ab45ec86ab More helpful debugger message.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 15:45:24 +00:00
Stephan Aßmus
52ede95cd7 * Removed outdated USE_MULTI_LOCKER build option
* Don't acquire the read-lock in WindowForClientLooperPort,
   since MultiLocker does not support nested read-locks.
   Use an assert instead, however the method does not appear
   to be used anywhere at the moment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 10:10:27 +00:00
Clemens Zeidler
bba6f48d64 Add Notify* prefix to DesktopObservable hooks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 23:44:30 +00:00
Clemens Zeidler
ee9246d5f5 Remove unused communication port, pointed out by Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 23:23:02 +00:00
Clemens Zeidler
26d8064ea8 Lock WindowForClientLooperPort method and add comment that the window lock has to be held if accessing the a WindowList.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 22:56:19 +00:00
Clemens Zeidler
c0494bc592 Add facility to communicate with the desktop listener over an app server link. The ServerWindow dispatch the message to the DesktopObservable which dispatch it to the correct listener.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38169 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 06:25:55 +00:00
Clemens Zeidler
b8a44a250e Add function to find a window in the app server by the client looper port id. Need this for the stacking api e.g. to stack window x on window y.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-17 06:23:06 +00:00
Rene Gollent
6e23be561a Fix build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-16 20:58:35 +00:00
Stephan Aßmus
119e788a15 Corrected outdated comment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-16 19:34:15 +00:00
Stephan Aßmus
b6865b963b Rewrote the fake font overlay support, as the previous implementation
had several problems: First of all it duplicated the FontCacheEntry
retrieval and locking code. Second it was really slow to do the whole
lookup for every single glyph. Third is used the FontManager without
locking, which could result to app_server crashes, mostly at startup,
while the FontManager thread was scanning the fonts and the glyph
layout was already using it. Forth it dereferenced a FontStyle
pointer without checking it against NULL. And lastly it didn't use
the font size of the original font for the fallback font.

The new algorithm addresses not only these, but also puts the glyphs
which are unsupported by a font and retrieved from the alternative
font, into the FontCacheEntry of the original font, so that the
HasGlyphs() check succeeds the next time around and does not need to
use the fallback algorithm anymore. There is also less manual management
of locking and FontCacheEntry recycling, this is now taking care of by
FontCacheReference objects on the stack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-16 19:24:20 +00:00
Stephan Aßmus
e404b4ed2a * The Glyph() method takes an optional FontCacheEntry* parameter
which can do an alternative lookup of the glyphCode to glyphIndex
  and who's FontEngine is used to retrieve the GlyphCache object.
  The glyph however is inserted into the Cache of the original entry.
* GlyphCache objects are no longer looked up by index, but by charCode,
  which should not be a functional change, but allows to lookup glyphs
  from the cache for which the underlying FontEngine does not have
  a code to index mapping.
* Fixed an operator precedence bug in the signature generation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-16 19:17:11 +00:00
Adrien Destugues
fbebcdd42d CID 1743 : Memory leak on error.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-16 08:14:34 +00:00
Adrien Destugues
8e13f13e5c CID 1744 : memory leak on error
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-16 08:11:47 +00:00
Stefano Ceccherini
48a05691c4 directory was leaked. CID 1745
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-15 09:59:20 +00:00
Adrien Destugues
78e421e05e Turns out this was right after all. Thanks to Rene for the explanations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-13 14:08:15 +00:00
Adrien Destugues
d84da869d5 CID 1556 : wrong cast type.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-13 13:18:36 +00:00
Clemens Zeidler
c84e125085 Rework listener interface as suggested by Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-12 23:05:31 +00:00
Clemens Zeidler
5483fa4e78 - Make RebuildAndRedrawAfterWindowChange public. This is useful when changing the window footprint from the outside. In this case RebuildAndRedrawAfterWindowChange recalculate the clipping and everything. Need this when I switch a decorator into a SAT stacking mode which is not a standard desktop operation. In this case the tab size is adjusted and also the window clipping need to be recalculated.
- First unregister listener reload decorators and then register new listener.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-12 22:09:28 +00:00
Clemens Zeidler
f182b4e2f9 Make _GetButtonSizeAndOffset protected.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-12 21:58:21 +00:00
Clemens Zeidler
d25313d44f Add listener for the tab location.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-12 21:19:49 +00:00
Axel Dörfler
d45bbb649e * Implemented that pressing the window modifier plus double click will minimize
the window. This closes ticket #6429.
* Got rid of useless _Extract*() methods. Also removed the _ActionFor() variant
  that only took a message.
* Removed unused "invalidate" variable in MouseUp().
* Coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-10 10:00:16 +00:00
Axel Dörfler
3a5082aa46 * Got rid of the home brewn double click detection - we're now simply using the
"clicks" field of the mouse message as everywhere else.
* Renamed Decorator::Clicked() to MouseAction().
* Minor style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-10 09:14:46 +00:00
Michael Pfeiffer
032a8371aa As per Stephans request re-added comment that I
removed in r37939.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-06 18:24:48 +00:00
Michael Pfeiffer
ab7c7773b2 * With blessing from Stefano applied my alternative patch
from ticket #6415: the drawing offset of a BPicture
  becomes the new drawing origin.
* This should also close ticket #6008.
* Also the Preview printer does the clipping now correctly
  outside the "printable rectangle".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37939 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-06 12:21:34 +00:00
Clemens Zeidler
a52ec87162 Group header by type. Thanks Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-05 19:21:37 +00:00
Axel Dörfler
691749c0a3 * Changed mouse down behavior for all mouse modes while dragging a window: now
a second click on the right mouse button will raise the window again.
* Desktop::SendWindowBehind() now locks a bit earlier, as some of the things
  it did shouln't really be done without holding a lock (depending from where
  it was called).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-05 11:06:10 +00:00
Clemens Zeidler
d6734c083a - Notify listener when they are registered and unregistered.
- First reload decorators and then the listeners. (my SAT listener caches the decorator when it is registered so the new one should already be loaded)
- Make the Desktop all window list accessible, help full when a listener is registered and want to iterate over the existing windows.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-04 22:09:57 +00:00
Clemens Zeidler
670cf167f0 Make the DefaultDecorator more convenience to sub class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-04 22:01:43 +00:00
Clemens Zeidler
2be8427e01 Remove debugger call. This assert is to early because the desktop is locked later in the LockedDesktopSettings sub class. Fix bug #6392.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-04 21:40:43 +00:00
Axel Dörfler
f91f6b6285 * Implemented changing the "click to focus" mode as suggested in ticket #6419.
* It feels much better, but maybe raising the window should only happen on the
  second click instead?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-04 08:11:32 +00:00
Axel Dörfler
2248e30f11 * Fixed broken accept-first-click eating logic I introduced yesterday, sorry!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-04 08:10:07 +00:00
Clemens Zeidler
a92ef26cd7 Fix coding style.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 20:32:37 +00:00
Axel Dörfler
0e505c0c7b * Separate the B_WILL_ACCEPT_FIRST_CLICK window flag from the accept-first-click
desktop setting, following bug #6420.
* Now, only windows with the flag set have to implement their activate behaviour
  itself (as Tracker does), the desktop setting no longer has an influence on
  this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 19:39:50 +00:00
Clemens Zeidler
b6ba2290fc Introduce a new DecorAddOn class which provide the DecorManager with the needed Decorator, WindowBehaviour and DesktopListener.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 04:36:21 +00:00
Clemens Zeidler
bd06a41c3a Cleanup of the some header includes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 04:30:07 +00:00
Clemens Zeidler
f629aeb0df Remove unsused BLocker inheritance.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37855 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-03 01:03:50 +00:00
Stefano Ceccherini
bb69cd6548 Basically revert r37824 (minus restoring the origin), since it causes other
problems (#6415 for example).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-02 08:04:33 +00:00
Stefano Ceccherini
568bdbf719 Convert the BPoint to screen coordinates respecting the scale
(using ConvertToScreenForDrawing()) before drawing a BPicture, both directly
and inside another BPicture. Restore the drawing origin when drawing a nested
BPicture (like we already do when drawing it directly).
Fixes #6008.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-30 20:46:29 +00:00
Clemens Zeidler
0265102f8b -Make Windows private again and lock the iteration over the windows when reloading the decorators.
- Make the used decorator persistent.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37816 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-30 01:19:20 +00:00
Clemens Zeidler
bb86786a1b - Make _Windows public.
- Reload all decorators when the decorator has changed in the DecorManager.
- Update copyrights.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-29 05:12:45 +00:00
Clemens Zeidler
860dfc9a77 - Introduce a DesktopListener interface to the Desktop class (needed for SAT).
- Add a minimize method to desktop.
- Make _CurrentWindows public.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-29 02:10:29 +00:00
Axel Dörfler
61729d9323 * Reworked the complete stack to allow more than one address per network
interface - this caused quite a number of changes.
* Network interfaces, and its addresses are now reference counted (not yet
  complete, though, InterfaceAddresses need to hold references to their
  interface as well).
* There are two known regressions of this commit that I will fix later:
  - you cannot remove interfaces anymore
  - IPv4 multicast was broken anyway, but now it's disabled, too.
* Moved a device_interfaces.cpp|h out of interfaces.cpp.
* The datalink layer chain is now instantiated per domain per interface,
  not just per interface anymore.
* When a buffer reaches the network layer, it has no known interface yet, ie.
  the ipv4|6|whatever modules need to set this manually.
* Added more debug output, and some new debugger commands, the control option
  is now printed in clear text.
* Added hash_address() function to the address modules. Added "const" to
  set_to_defaults() where needed.
* Fixed net_buffer's restore header functions offset use as reported by Atis.
* Improved buffer dump output, use the domain module to print the address if
  available.
* Moved net_buffer::type into the union, as it's not needed by the upper layers
  anymore.
* Moved IPv6 specific code from {add|remove}_default_route() to where it
  belongs, but disabled it for the time being.
* Completely discarded useless ipv4_datagram module.
* Added ping6 to the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-28 17:38:23 +00:00
Oliver Tappe
8eff03f570 * fixed all build warnings by collectcatkeys that I found
* automatic whitespace cleanup

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-25 22:58:29 +00:00
Axel Dörfler
6600877a5f * On Haiku, ifreq::ifr_name always includes the trailing null byte. Adjusted
userland code to take this into account (the kernel would just cut off the
  name).
* This closes ticket #6280.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-22 12:35:44 +00:00
Oliver Tappe
0ea1aab28a * fixed a couple of regressions of r37670 concerning optional build targets
(bluetooth, ac3_decoder, netfs)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 23:10:57 +00:00
Oliver Tappe
eddec292d5 * applied patch by kaliber that fixes more than 100 warnings - thanks a lot!
Closes #6349

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-21 21:43:20 +00:00
Adrien Destugues
5421c7d682 * Fix all localized applications, as an include was missing in some of them
* dstcheck : the generated catalog is now 'dstcheck.catkeys' instead of 'en.catkeys', so that it does not conflict with 
other localized apps in the bin/ folder.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 13:11:13 +00:00
Clemens Zeidler
962281e833 Invalidate the footprint at the right time to fix the calculation of the dirty border region.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 04:33:24 +00:00
Clemens Zeidler
604ae84e46 Set look and flags at the correct position.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37609 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 01:46:58 +00:00
Clemens Zeidler
30c31ae28a Always use the current decorator. This partially fix bug #6334.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-20 00:58:11 +00:00
Stefano Ceccherini
6718659e48 Fix warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-19 12:38:49 +00:00
Clemens Zeidler
43d808c01d Simplify code as suggested by Stippi.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-18 20:05:37 +00:00
Clemens Zeidler
e07ebdeb71 Fix SetTitle (bug #6321).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-18 01:35:45 +00:00
Clemens Zeidler
369b4ff1e3 Update copyrights.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-15 20:38:13 +00:00
Clemens Zeidler
09301a4959 Fix another TODO and move the caching of the decorator footprint region (the border region) form the Window class into the decorator base class. To do so I make some of the public Decorator methods non virtual and introduce new protected virtual methods instead. The non virtual public methods handle the caching now and calling the protected method afterwards.
This has to be taken into account when fixing the other Decorators!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-15 20:23:35 +00:00
Stefano Ceccherini
e4c638f650 ServerApp::Quit() was hiding MessageLooper::Quit() due to the default
paramenter, causing warnings when compiling with gcc4.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-15 07:32:15 +00:00
Clemens Zeidler
177ecc46b6 Refactoring of the Window class. Move window behaviour into separate WindowBehaviour class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-15 04:49:38 +00:00
Adrien Destugues
7215b9e2ed * Avoid falling back to VL Gothic if the font with a missing glyph is VL Gothic itself.
* Some cleanup and style fixes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-07 18:25:19 +00:00
Adrien Destugues
2548c4c974 Minimal font overlay :
* FontCacheEntry will not use the "empty" glyph from fonts anymore, so squares are not drawn anymore
 * GlyphLayoutEngine will try the VL Gothic font, if the requested font doesn't have any glyph fo the requested character. The 
caching for the fallback is suboptimal, and the font choice quite limited, but this allows at least japanese text to display 
properly on haiku out of the box.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-06 20:52:10 +00:00
Wim van der Meer
164fceb29a * Fix 'missing braces around initializer for 'property_info'' warning
* Style cleanup

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-03 04:34:45 +00:00
Adrien Destugues
be8fa2fb30 * Update all applications in tree to use the new localizing system
* Remove the old one from the locale librairy, with some cleanup
Known regressions :
 * readonlybootprompt will no longer update the locale settings : the 
method used messed with internal undocumented things
 * external localized apps (webpositive for example) will not run 
anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-02 11:36:13 +00:00
Wim van der Meer
cc507fa3f3 Fixes compiler warnings and coding style. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-28 06:26:08 +00:00
Oliver Ruiz Dorantes
a5bf12376d *Incorrect endianess handling from bdaddr at parsing from string.
*Remove bluetooth_util deprecated header
*Issue conn_req for socket connect() call



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 20:04:10 +00:00
Axel Dörfler
be816234e8 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 07:29:16 +00:00
Philippe Houdoin
2d3904fe20 Add interface disabling support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 01:00:49 +00:00
Stephan Aßmus
8f8c973796 Updated indentation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-07 21:17:49 +00:00
Fredrik Holmqvist
a648cf19fd Build fix, or Transport.Scripting.cpp2 needs to be added ;)
Thanks luroh for noticing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36967 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-28 16:46:45 +00:00
Michael Pfeiffer
9abbe87f8c * Style changes. No functional changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-28 15:55:07 +00:00
Michael Pfeiffer
8b0a06ad7a * For consistencies sake also translate transport scripting
comments.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-28 15:41:56 +00:00
Michael Pfeiffer
f591d304a7 * Include of locale not required as pointed
out by Jérôme Douval ocommits ML. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-28 15:27:44 +00:00
Michael Pfeiffer
8d2c390382 * Applied slightly modifed patch from ticket #6089 by Karvjorm. Thank you.
- Added translation comment to paper sizes.
- Localized scripting comments.
- Improved localization of job info.
- Localized parts of about dialog text.   


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36963 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-28 13:45:21 +00:00
Jérôme Duval
31a3c4e885 gcc 2.95 build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-27 18:55:28 +00:00
Stephan Aßmus
f33637d9a8 * Improved BNotification API.
- No more manual memory management.
   - Make it clear who keeps or releases ownership of arguments passed.
   - Copy icon, arguments and entry_refs.
   - Do not expose implementation details (What do the BLists contain?!).
   - BRoster takes const BNotification& and bigtime_t timeout.

 * BRoster::Notify():
   - Proper error handling.
   - Fixed documentation.

 * Adjusted notify:
   - Renamed fOk to fHasGoodArguments.
   - The "const char*" members were really "char*" members (self-managed).
   - free() is NULL-safe.
   - fRefs contains BEntries, so passing void* to delete does no good.
   - Adjustments to the changed API.
   - Coding style fixes.

 * notification_server:
   - Adjustment to the new type for timeout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-27 17:50:12 +00:00
Stephan Aßmus
de9dcd41f8 Patch by plfiorini: Integration of InfoPopper as a system service. See ticket
#1245. There are some TODOs outlined in the ticket, but they will be much
easier to review as individual patches against trunk, versus as a new version
of the huge patch.

I've messed a lot with src/servers/notification/NotificationsView.cpp in order
to resolve a crash I was getting when testing this thing (rewrote line
wrapping). I've also replaced the icons with the one that zuMi did long ago.

Thanks, plfiorini, for working on this code as much as you did!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-27 14:48:27 +00:00
Axel Dörfler
2fc6f37e88 * Window::MouseDown() no longer eats the click if the window modifiers were
pressed even if there is nothing to do. This allows the Deskbar to be moved
  with the window modifier keys held, finally, see #6029.
* Removed a superfluous (fDecorator != NULL) from the check to choose between
  decorator and window modifier action - _ActionFor() can safely be called with
  a NULL decorator, and it just made the logic look wrong (even though no harm
  was done).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-25 11:26:00 +00:00
Stephan Aßmus
3e711c79d8 Patch mostly by jackburton: The global offset for drawing a BPicture needs to
be applied before pushing a drawing state, otherwise it is not preserved
throughout playing the picture data. I've added the comment and resetting the
drawing origin to the previous value. Fixes ticket #6070, thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-25 10:45:04 +00:00
Stephan Aßmus
3f027ce92a Localization of mount_server based on a patch by Jorma Karvonen (ticket #6063),
thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-24 14:43:09 +00:00
Stephan Aßmus
33394b856d Patch by Wim van der Meer: Added get_mouse_bitmap() global method to
InterfaceDefs.h and corresponding implementation in the app_server. Thanks a
bunch! Closes ticket #5978.

A note to those using "update-all" with hybrid builds - the alternative GCC
system libs will not be updated this way, and this and Wim's last patch
change the libbe <-> app_server interface. You need to manually update the
respective libbe.so, or do a clean build, otherwise apps for the other GCC will
not start anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-16 15:51:54 +00:00
Axel Dörfler
b78034782a * Possible work-around for #5899: if the index does not contain the correct
information, the mail is no longer sent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36820 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-15 13:26:13 +00:00
Stephan Aßmus
1c73ffa102 Patch by Wim van der Meer: Implemented global Interface Kit function to retrieve
the current mouse position and pressed buttons. I've changed the return code
to status_t and added anal error checking, most of the rest of the file is not
doing it, though... :-) Thanks, Wim!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36811 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-14 15:53:09 +00:00
Matt Madia
4eb0cbb044 Updated TR_CONTEXT to be B_TRANSLATE_CONTEXT, relating to #5408.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-07 20:19:06 +00:00
Oliver Ruiz Dorantes
125183f9e5 - Add possibility yo set a custom friendly name to our device. Which will be seen by remotes devices at discovery
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-07 18:25:09 +00:00
Matt Madia
913ffd3e69 Updated to use B_TRANSLATE* macros. relates to #5408.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-07 00:35:03 +00:00
Ingo Weinhold
223bdece87 CreateAppMetaMimeThread::DoMimeUpdate():
* Don't traverse symlinks. Besides that this is not how the BeOS
  implementation behaves it could also lead to undesired recursion in case of
  symlinks to directories.
* Only process regular files.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-04 17:37:19 +00:00
Jérôme Duval
4da0916c58 * style cleanup
* DefaultManager: added a lock around rescan thread start and exit:
this should fix the possible race condition spotted by Ingo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-02 22:35:18 +00:00
Axel Dörfler
0a51dbde98 * Unified the Desktop and ServerApp AS_ACTIVATE_WORKSPACE to work in the same
way.
* Use that newly exposed feature of taking the focus window to the new workspace
  when using the Ctrl-Alt-Shift-Arrow shortcut.
* This fixes #5675.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-02 17:15:13 +00:00
Axel Dörfler
8104bd5422 * Always set the focus to the moved window on workspace switch.
* This fixes a part of ticket #5675.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-02 17:12:33 +00:00
Stefano Ceccherini
a8e3f15774 Applied (part of) a patch by Kaliber, attached to ticket #5875. Thanks!
Will commit the rest later.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-02 09:58:06 +00:00
Jérôme Duval
bbfd31096c * avoid launching one thread for each rescan request.
* erase the defaults settings file when writing it, previous content still existed at the end of the file.
* don't save an empty defaults settings file when node information is not available, this should mean the add on server is already gone.
* added some debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36452 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-24 16:56:22 +00:00
Oliver Ruiz Dorantes
ddbc9a0f2a - I expected once Haiku sets a connection with a remote device, such connection
was to expire in a couple of minutes, but not, seems to stay forever.
- Implement a Disconnect button in prefrences&kit



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36450 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-24 16:01:08 +00:00
Oliver Ruiz Dorantes
040fb3eaac - Refactor the handling of Expected and unexpected events.
- Handle all events invovled in the authentication
	- LinkKey requests -> reply always negative due the lack a a local linkey database
	- LinkKey Notification
- Handle Completed number of packets for future control flow
- Allow clients to issue a command without having to expect an event
- Fix: LocalDevice Handler was stopping the search once the opcode expected did not match
- Cleanup debug window



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-24 11:54:38 +00:00
Jérôme Duval
3fe663e009 B_MEDIA_RAW_AUDIO is not a flag for media_type, instead we must check for audio values.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-21 22:21:48 +00:00
Oliver Ruiz Dorantes
2db900d8f1 - Some refactoring on the event handling
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-17 20:10:47 +00:00
Axel Dörfler
2c49465329 * Removed the at_kbd_io and AT keyboard stuff; this is now done within the PS/2
driver, and that driver is using the raw_key_info structure as well.
* Renamed kb_mouse_driver.h to keyboard_mouse_driver.h.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-14 19:19:14 +00:00
Axel Dörfler
a608485f26 * Added new team flag B_TEAM_DEBUG_PREVENT_EXIT that prevents teams from exiting
via exit() (the calling thread will drop into the debugger instead).
* The DebugServer now uses this flag by default.
* Added TODO comment: the default debugger should already be able to set a flag
  like this in order to close a race condition between dropping a thread into
  the debugger and setting the flag.
* Cleaned up the debug_server sources a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-14 18:03:48 +00:00