Commit Graph

3551 Commits

Author SHA1 Message Date
Clemens Zeidler
2483cfd8b7 Patch by taos. Fix mail daemon signature. Thanks! This probably break the HTA entry... Is there a special reason why the signature is x-vnd.Be-POST? x-vnd.Haiku-mail_daemon sounds better to me.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-28 23:48:00 +00:00
Clemens Zeidler
ccc37bbb77 Don't forget to unlock when there is no desktop listener for the message.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 02:46:15 +00:00
Clemens Zeidler
8a26696cbf Patch by mt who also puts the Japanese mail translation into HTA. Thanks! Closes #7689.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 19:59:00 +00:00
Michael Lotz
b617e8daff A blast from the past: r15048 from way back removed the wrong boolean parameter
causing the message to be sent with a timeout of "true" (getting converted to 1)
instead of the intended 0 meaning no/infinite timeout. This caused the message
sending to be aborted due to the timeout if it was blocking on a full port for
example. Since the return value is never checked noone noticed.
It's possible that this was the cause of some lost input messages (mouse,
keyboard) when the system was under heavy enough load for either the port heap
to be exhausted (unlikely) or the input_server <-> app_server port to run full
(quite possible).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 22:24:36 +00:00
Clemens Zeidler
c26c18e489 Apply a nice patch from Taos, thanks!
Localize the mail server and preferences. Get rid of MDRLanguage.h.
The Japanese translation is attached to #7689. Please give a notice when it is in the translation system and the ticket can be closed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:15:27 +00:00
Jérôme Duval
e53da92708 Part of patch from #6840:
* GCC 4.5 complains about switchs with cases not part of the window_look enum (see WindowPrivate.h).
* To keep them private, cast the enum to int before use in switchs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 18:13:21 +00:00
Stephan Aßmus
b46615c55a Applied patch by Joseph "looncraz" Groover from ticket #7445.
This changes how Decorators are managed and applied. The app_server
no longer scans and maintains the available ones himself, but is
simply asked to load a Decorator add-on from a provided path.
The Decorator scanning is moved into DecorInfo and DecorInfoUtil,
private classes in the InterfaceKit. The bin command 'setdecor'
uses those.
I cleaned up all the coding style violations that I could find,
removed chunks of code which didn't make sense (if you never put
a NULL pointer into a list, you don't need to check for this and
so on) and also cleaned up other passages for improved clarity
and simplicity.
I also tested the functionality and it works fine. Would even be
Ok to include in Alpha 3, IMHO. Thanks for the patch!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-19 15:25:54 +00:00
Philippe Houdoin
b6ba1daaac There is no point trying to request back from DHCP a link-local
auto-configured address...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-16 16:00:18 +00:00
Axel Dörfler
10dfe8970c * Really, there is absolutely no need to pass the default argument to an
optional parameter...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-06 20:03:15 +00:00
Rene Gollent
8a9d5e34fe Patch by Atis Elsts from GSoC 2010 that was overlooked.
- Adds IPv6 fragmentation support and some partial work to enable configuration of IPv6 in net_server. Not currently in the build.
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-28 22:07:39 +00:00
Philippe Houdoin
0892800f69 Implemented INIT-REBOOT DHCP state: as required per DHCP specs,
we now request the last address we got from DHCP server, and only on failure
we fallback on the whole INIT state (discover, collect offer, etc).
This should fix people losing their IP address at each renewal, or far worse,
after the link goes up again.
Closed #7346.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-27 15:04:55 +00:00
Philippe Houdoin
e65843e8c9 Revert files that were commit by mistake in previous commit. Sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 01:56:02 +00:00
Philippe Houdoin
9ff5266f3a Avoid deadlock.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 01:52:16 +00:00
Philippe Houdoin
302a7082ba Quit AutoconfigLooper when switching to static configuration.
Before, DHCP will still run after a link down & up event, which could 
leads to break the user-defined static configuration.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 01:02:02 +00:00
Philippe Houdoin
84fdf2c3ca Made _AddressToString() static methods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 00:48:11 +00:00
Philippe Houdoin
03f6ab7fd1 Add dhcp_message::FindOption(), to retrieve a specific option.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-22 21:52:15 +00:00
Philippe Houdoin
6d5ad15714 Check node monitoring messages to handle them only when it make sense.
Before, the "interfaces" settings file creation/removal notification was 
leading to a attempt to configure/remove an interface named 
"/boot/common/settings/network/interfaces"!
Could help fixing issue #7475.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-22 21:33:43 +00:00
Philippe Houdoin
d09c1f8e8d Made message retransmission delay +1/-1 randomized as required per RFC2131
spec (see paragraph 4.1)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-22 20:45:34 +00:00
Axel Dörfler
18ebc7918d * Temporary commit to be able to test new focus behaviour, see #7280.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-18 20:15:46 +00:00
Jonas Sundström
1c09002cbe Set the exclusive launch flag on servers, daemons, Tracker and Deskbar.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-11 12:23:51 +00:00
Jonas Sundström
3252a2a09d Remove old debugging output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-07 12:09:57 +00:00
Clemens Zeidler
08606d49da Add settings to enable and disable in and outgoing mail accounts.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-22 10:28:22 +00:00
Clemens Zeidler
a1f765fb1a Create an index for MAIL:account_id. If you using POP3 update to this revision! POP3 queries for this attribute and if no mails are found with this id it will delete the missing mails on the server (if the option is ticked).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-21 20:02:48 +00:00
Clemens Zeidler
a64bd5649d Write MAIL:name, MAIL:thread and MAIL:account attribute. The account id is now stored in MAIL:account_id. This requires to re-download all mails to write the correct attribute (sorry).
Fixes #7375.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-21 09:13:12 +00:00
Clemens Zeidler
37f85698cf - Fix race condition when start watching a mailbox and directly afterwards stop watching it. A BLooper was not suitable to synchronise start and stop watching. Wait till the IDLE command is send before returning the SyncAndStartWatchingMailbox method now. That ensures that a later StopWatchingMailbox call find the maibox in an expected watching state.
There is one thread (BLooper) to handle new commands and one watcher thread which is just listening at the server port for updates. The race condition occurred for example when a sync/watching and a fetch body message are send to the looper. The sync message just triggered the IDLE command in the watcher thread. In the meantime the fetch body command send a DONE command, because the IDLE command has not be send at this time the watcher keeps watching. 

- fix int32 -> ssize_t thanks Axel and Stippi
- clean up



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-11 20:13:54 +00:00
Stephan Aßmus
1d1031cf27 Duh, of course fStyle can be NULL in SetStyle(), which is for example
called from the constructors...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 21:47:57 +00:00
Stephan Aßmus
663738e98e The whole file assumes fStyle cannot be NULL, and it can't be NULL unless there is
no default font at all, in which case we have more serious worries. CID 1559.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 21:36:35 +00:00
Stephan Aßmus
87911f6c6e fClippingRegion cannot be NULL at this point (or at least is not supposed to be). CID 3167.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 21:26:17 +00:00
Stephan Aßmus
de68adf69b Secure coding, sprintf->snprintf. CID 6321.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 20:59:00 +00:00
Stephan Aßmus
f1aceeca70 Initialize hash_link. I don't think it could be used uninitialized, but it never hurts...
CID 9468.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 20:55:01 +00:00
Stephan Aßmus
54fff0c456 Fixed resource leak in error code path. CID 5888.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 20:48:09 +00:00
Jonas Sundström
82e7ef6709 Add app filename localization catalog entry support to BAppFileInfo, registrar and mimeset. Need help to understand why the build-version of UpdateMimeInfoThread.cpp does not compile with the added code, currently commented out. Sorry about the arbitrary B_MIME_TYPE_LENGTH*3. Advice and review welcome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-07 15:14:46 +00:00
Clemens Zeidler
b0acdd1578 Remove some code that pretty much looks like some legacy code to add additional attributes to a running system.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40797 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-03 21:42:29 +00:00
Clemens Zeidler
b8d2bbd616 - Partial downloaded messages are now opened by Mail and not by the mail daemon. Mail request the body fetch and get notified when the daemon is done. During this time the Mail window title is showing "Downloading: subject". This fixes #7256.
- Some cleanup in Mail.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-03 09:05:04 +00:00
Clemens Zeidler
c38ff3e36c Remove unused files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-28 21:26:23 +00:00
Siarzhuk Zharski
c4489236c7 Additional and hopefully final fix for #7281 "Shutdown is not localized".
PS: Yes, I'm not brave enough to change the character case in the signature for 
one of the most significant servers in the system ;-)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-27 22:38:02 +00:00
Jonas Sundström
9f0f6fcd99 Fix mixed up button labels.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-26 05:57:46 +00:00
Philippe Houdoin
ea56573776 Localized Shutdown process.
Closes #7281.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-25 13:16:04 +00:00
Stephan Aßmus
4153964a10 Moved IconUtils.h to Interface Kit and therefor made it an "official" header. Since the class has no
virtual but only static methods, it is not so likely that binary compatibility issues may arrise
from using it in new apps. Adjusted all the Jamfiles that included the private libicon headers. Note
that it was never necessary to link against libicon.a, since it's part of libbe anyway. There was one
instance where that was done. Hopefully it does not break the build, but I did this change a while ago,
tested it and then the harddrive began failing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-25 09:12:38 +00:00
Stephan Aßmus
581144ea46 fLastSnapTime was never initialized, which may have prevented
snapping to work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 11:36:26 +00:00
Stephan Aßmus
cbaa4d3143 Initialize all members. They don't seem to be used, but this can avoid future
use in derived classes without enforced code paths... (CID 10252).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 11:29:26 +00:00
Jonas Sundström
46f4e9db27 Useless type qualifier on return type. CID 5666.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 04:38:57 +00:00
Jonas Sundström
93e53019bf Missing InitCheck. Error checking stale status variable. CID 2962.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 04:35:37 +00:00
Clemens Zeidler
7398688a5e IMAP commands are serialized using the BLooper message queue. MarkMessageAsRead used the direct way to access the protocol and so interfered with ongoing requests.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40606 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-22 00:42:02 +00:00
Clemens Zeidler
f191a57149 - Change the new mail query to search for the MAIL:read attribute.
- The deskbar status query is looking for MAIL:read values equal to B_UNREAD now. This has the effect that in manual mark as read mode also unseen messages are counted as read messages. In this way the deskbar shows the full mailbox icon only for really new messages.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-21 10:01:39 +00:00
Clemens Zeidler
9967dfd924 - Extend MarkMailAsRead to take a flag not only a bool value. Write an additional MAIL:read attribute.
- Remove some hard coded paths.
- Catch failure of FindMessage correctly. Thanks Axel.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-21 07:24:29 +00:00
Clemens Zeidler
0e657c0b6c Remember tracker message when downloading a partial message and open it with Mail. This is needed to get the next/previous message after downloading the body.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 07:55:47 +00:00
Clemens Zeidler
df317863c8 Fix regression spotted by Humdinger. Try to open the entry in settings/Mail/mailbox first.
Add some more info to the self made query, not perfect yet.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 06:08:26 +00:00
Clemens Zeidler
20a1f87af2 Open the new query window when clicking the deskbar mail icon. The mails/in folder is not a valid folder in any case and if you have a lot of mails it takes for ever to display all mail in tracker.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 04:14:48 +00:00
Siarzhuk Zharski
70a1f34934 The "usage" field of property_info should not be localized.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-19 23:06:25 +00:00
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