Commit Graph

33247 Commits

Author SHA1 Message Date
Jérôme Duval
1ab9f3da33 gcc4 build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 18:47:21 +00:00
Axel Dörfler
bc235d9650 * The test should now actually work, however, it welcomes KDL for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40424 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 18:45:15 +00:00
Axel Dörfler
135d98d622 * Forgot to add the test to the suite.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 18:40:27 +00:00
Axel Dörfler
ce9e476882 * Added basic test for BNetworkInterface - I did not run that one yet, though
(switching to Haiku now to change that).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 18:15:38 +00:00
Axel Dörfler
cf93c8c719 * FindAddress(), and FindFirstAddress() now return -1 on failure.
* FindFirstAddress() did actually not specify the family to find, so that the
  stack did not have the opportunity to find anything else but the first
  address.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 18:13:15 +00:00
Oliver Tappe
91ebce663d Some cleanup, no functional change
* typedef base classes as 'inherited' and use that instead of the
  explicit base class name
* remove superfluous scopes in case blocks


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 17:16:35 +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
d143d3a6df Fix typo. This fix the authentification method in auto config.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 01:57:59 +00:00
Clemens Zeidler
079e5c8bc9 Use declarations form MailAddon.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 23:26:38 +00:00
Clemens Zeidler
a68750c1ac Fix spelling and potential deadlock.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 22:22:26 +00:00
Clemens Zeidler
b985151b34 At least in vmware it takes longer to read the local files then the remote list. Add a status message for that.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 22:17:54 +00:00
Clemens Zeidler
81d1d0e504 To sync the mailbox a thread is started which reads the local files while in the parent thread the id list from the server is fetched. To sync both threads a BLocker was used. BLocker does not block when locked from the same thread so use a semaphore now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 22:11:50 +00:00
Alexander von Gluck IV
9b533c387c FindFirstAddress returns errno when there is no address matching your search
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40411 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 21:01:17 +00:00
Jérôme Duval
245df7abd3 added exFAT partition type
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40410 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 20:30:00 +00:00
Jérôme Duval
e74e90aef9 * Implemented a read-only exFAT file system, tested with a 4GB image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 20:08:48 +00:00
Clemens Zeidler
294da6bff9 Belongs to the last commit, sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 19:44:59 +00:00
Axel Dörfler
e0971ab8f6 * Restricted the cursor position/selection restoration to the formula mode for
stored queries - it's usually more annoying than helpful for the other modes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 19:20:34 +00:00
Clemens Zeidler
37d898f0b6 Fix coding style. Thanks Jérôme!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 19:18:13 +00:00
Oliver Tappe
0d68f6afb3 Implemented repository writing:
* fleshed out RepositoryWriterImpl
* renamed BRepositoryHeader to BRepositoryInfo (in accordance with
  BPackageInfo)
* adjusted BRepositoryInfo to be able to parse itself from a
  driver_settings file
* added package_repo binary (only 'create' works as of yet)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 19:11:23 +00:00
Philippe Houdoin
78a471321c Made localizable attribute control's label formatting.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40404 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 11:28:56 +00:00
Philippe Houdoin
46af96832f Use BMimeType constructor version directly, as suggested by Jerome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 11:25:41 +00:00
Clemens Zeidler
c608a3b2bc Fix count_pop_accounts. Returns number of all accounts regardless if it is a pop account or not (as before and in the whole file)...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 10:10:17 +00:00
Clemens Zeidler
2e5122917d Re-add/fix old c mail api functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 09:58:00 +00:00
Clemens Zeidler
2cec29dba0 Remove unused system_filters directory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 01:55:00 +00:00
Clemens Zeidler
dc2577cf2d Map one or more server mailboxes two a local directory. All subscribed mailboxes are fetched automatically and populated under the root account folder. On startup the local copy is synced with the server, means all local changes are rejected. (We should think about store offline changes and apply them when online)
Also the read flags are synced with the server. This makes it easy to have the same mailbox state on different machines.

Messages could be deleted by delete them form the folder (not when moving them to trash) This maybe needs some more thoughts but its a save solution. One problem with moving it to trash is that you also want to have the option to restore it again. If it is a header only messages and you delete it from the server you lose the body part. Complete messages could theoretically be append to the mailbox again when restoring the mail form trash. Append is commented out though...

An solution for the delete problem would be to move the message to a trash folder on the server. Moving mails on the server is not implemented yet, though.

You can subscribe or unsubscribe to a mailbox using the imap pref panel. The settings are written to the server and are not stored locally.

Add some helper classes which could also be used for POP and SMTP:
ServerConnection: abstract ssl or socket connection
ConnectionReader (still a bit IMAP specific but could be easily separated IMHO): read complete lines or a bunch of data more efficient. Old implementation did it byte by byte, this class read data in bunches and buffer the left over for the next request...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 01:54:18 +00:00
Clemens Zeidler
d26fee1afb Switch to the new MailProtocol and account API. Lot of other smaller adaption to the new mail server.
Remove button in the pref app removes the complete account because we don't have separate chains any more. The pref app stays a mess, needs some layout love! (I did it even look worse...)

The new account/mail settings classes know if they have been changed but the current pref panel does not use this feature very well. It always mark the settings as modified when the settings view is displayed or more precise when the settings view is detached from the pref window, this could be optimized. The according mail protocol is completely restarted when their settings changed.

Some system filters are now directly integrated in the mail protocols. Hopefully make things easier to understand.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 01:52:30 +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
Alexander von Gluck IV
f9ac5fc8f5 adjust function names as per axel; begin using BNetworkInterface; correct a misnamed resource id
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 22:20:13 +00:00
Alexander von Gluck IV
e9aa1e0581 quick style cleanup; no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 21:06:34 +00:00
Oliver Tappe
8b94d2ff6a * add stubbed RepositoryWriter to build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 20:15:50 +00:00
Oliver Tappe
d77c6cd26a * implemented checking of licenses, such that it is no longer possible
to create a package that refers to a license that is not a system
  license or contained in the package
* added package-info flags (currently only approve_license and 
  system_package)
* adjusted package-reader/writer and pkgman accordingly

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 19:50:36 +00:00
Alexander von Gluck IV
1b4f0abf9d Make NetworkSettings more friendly to network family (IPv4 and IPv6); Start using BNetworkAddress instead of BString for address storage; NetworkSettings will handle setting and reading current interface settings, please excuse the mess atm in NetworkSettings.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 17:47:39 +00:00
Philippe Houdoin
435492aefc WIP to display/change/store in People files a picture.
Not yet integrated in the app as it needs a bit of work to give
him some place in the window without breaking too much
its visual appareance.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40391 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 15:26:01 +00:00
Alexander von Gluck IV
083fe63d0d Break the Settings class away from the network Preference applet so It can be re-written without risk of breaking the current network preference applet; the InterfacesAddon is now autonomous
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 14:52:27 +00:00
Oliver Tappe
4ee7d007d6 Cleanup:
* PackageWriterImpl no longer accesses members of WriterImplBase 
  directly, but uses getters/setters instead
* package attribute registration has been moved from PackageWriterImpl
  to WriterImplBase, as it will be used in the same manner by the
  RepositoryWriter


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 10:59:38 +00:00
Clemens Zeidler
9ef9c027aa Remove debug left over.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 09:09:49 +00:00
Clemens Zeidler
3d25371741 Don't copy the constraint list, just use a pointer to the list.
There was a strange crash under gcc4. After some searching I found out that there is some clash with namespaces.
After removing the namespaces it works again. Could somebody explain what went wrong there?



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 09:07:26 +00:00
Clemens Zeidler
459ab04358 No pref constraints for sizes equal -1. This works better with items like glue.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 09:02:36 +00:00
Clemens Zeidler
8286779101 Make kp_solve interface work again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 09:01:11 +00:00
Alexander von Gluck IV
5e20ca5652 ati really isn't that extreme; no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 00:15:13 +00:00
Stephan Aßmus
af927c61ba * Make sure the image super type has Width, Height, Rating, Comment and Year.
* Make sure that video and audio default to display rating as rating (untested).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 23:29:26 +00:00
Stephan Aßmus
bb5f99a5a6 Reimplemented how People works. The previously hard-coded attribute list
is now only a fallback attribute list which is install in case the Person
MIME type has no attributes at all. Otherwise the GUI is completely driven
by the current Person attributes, as configured (and sorted) by FileTypes.
This has been on my mental TODO list since years. Finally one can add
a "Cell phone" attribute in Filetypes and actually see and edit it in
People. Or a birth day attribute. If I had read the previous code correctly,
it was only due to a bug that People did not remove those any attributes
on every launch.

I've tested this quite a bit, but it wouldn't hurt to test it some more.
The only "regression" I am aware of is that State and Zip code are not
in one line anymore. Perhaps this feature could be reintroduced by looking
at the display width and if two attributes are short, put them in one line...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 23:25:16 +00:00
Stephan Aßmus
2099a79214 Added two new buttons "Move up" and "Move down", which makes it a) possible
to manually sort the attributes and b) very obvious how to do it. Drag&drop
sorting should be implemented eventually (more convenient but less obvious),
but this works pretty well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 23:20:23 +00:00
Stephan Aßmus
a416707fb3 There is really no reason at all to mess up the current sorting
of the attributes just by adding a new attribute.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 23:18:14 +00:00
Stephan Aßmus
c8cbb2763f Try to remember the last selected attribute, or select a new attribute
if all other attributes are the same as before. This first is helping
a feature I am going to commit next, the other is making sure that a
newly created attribute is selected, I pondered other options to realize
this feature against the highly asynchronous model updates, but this
seems to be most robust and highly unlikely to be triggered in accident.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 23:17:11 +00:00
Alexander von Gluck IV
76aa5cf82a added a better list of pci Radeon HD cards to the radeon_hd driver skel; fixed misplaced spaces
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 22:53:56 +00:00
Oliver Tappe
f202217364 Refactoring step towards implementation of RepositoryWriter:
* pulled commonly useful parts out of PackageWriterImpl into 
  WriterImplBase
* moved CachedStringTable and related methods into a separate class,
  StringCache, in order to support having more than one string cache
  per package file
* made package attribute section use a string cache, too, as that's
  going to be very useful for repositories
* instead of writing package attributes directly, we now collect
  corresponding PackageAttributes and write those later
* adjusted package reader accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 22:25:16 +00:00
Jérôme Duval
a19d237fcf Patch proposed by mt and Karvjorm: use B_TRANSLATE instead of B_TRANSLATE_MARK.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 22:08:41 +00:00
Stephan Aßmus
2b52661315 Added another GetInfo() variant with which one can retrieve the count and
fixed size flag at once. Not sure if this can be merged into one of the
existing GetInfo() variants without breaking binary compatibility.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 20:10:14 +00:00
Stephan Aßmus
36ef875aad The left and right side of the FileTypes interface are now divided by
a BSplitView. The layout weight is remembered in the settings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 18:47:50 +00:00