Commit Graph

42790 Commits

Author SHA1 Message Date
Gerasim Troeglazov
d68289f7ae NTFS: Update libntfs to 2014.2.15 2014-04-14 11:35:50 +00:00
Adrien Destugues
02cdea9f9d BTab: use ControlLook to draw label.
* Supports disabled tabs like BeOS did: label is drawn with disabled
color, but can still be selected.
2014-04-12 11:37:45 +02:00
Adrien Destugues
4991d3fb52 Fix build. 2014-04-12 09:32:43 +02:00
Adrien Destugues
9b1f41b9c1 AddOnManager: remove more annoying traces. 2014-04-12 08:57:28 +02:00
Adrien Destugues
cfc4b62367 Network Kit: Prepare for HTTP range requests
* The DataReceived hook gets a position argument, making it possible for
listeners to handle out-of-order data (from two range requests at
different positions, for example)
* Adjust HaikuDepot (only user of the API in our sources)
* Add a copy constructor to HTTPRequest that copies the relevant
parameters from an existing request. Makes it easy to repeat a request
with a different range. Could be useful for restarting downloads, or
paralellizing them.
* Add SetRangeStart, SetRangeEnd calls to HTTPRequest, no implementation
yet. I'm putting all the API changes in this commit as it needs to be
synced with a matching haikuwebkit release.
* All archs must update to HaikuWebkit 1.3.0. Previous versions are
broken by this.
2014-04-12 08:57:26 +02:00
Adrien Destugues
5ba7abf8f2 AddOnManager: remove useless traces
These were acceptable in media kit log, but are only annoying now that
the AddOnManager is ran in applications. Moreover, these get to stdout
and make some WebKit tests fail.
2014-04-12 08:57:23 +02:00
John Scipione
ebd3bcdb9b exfat: handle 4-byte UTF-16 surrogate pairs
... in filenames. Replace the existing Unicode conversion functions
with UTF conversion functions from js that he relicensed MIT for us.

Put the UTF conversion functions in a private but shared code location
so that they can be accessed throughout the kernel.

Right now we only provide functions to convert between UTF-8 and UTF-16.
At some point we should also add functions to convert between UTF-8 and
UTF-32 and UTF-16 and UTF-32 but these aren't needed by exfat.

Remove the old Unicode conversion functions from exfat as they assumed
UCS-2 characters and don't work with UTF-16 used by exfat.

Rename most variables with the term length with code unit where code units
are intended. The term length, when used, means length in bytes while code
units represent either a full 2-byte UTF-16 character or half a 4-byte
surrogate pair.
2014-04-11 18:46:03 -04:00
Jérôme Duval
f13c2249b2 scsi_periph: fixed an "unused" warning. 2014-04-11 15:42:25 +02:00
John Scipione
1520fffa4f Time prefs: Use button label symbols & relayout
Add becomes +, Remove becomes −, the current button labels "Add" and "Remove"
are used as tool tips. Relayout the controls so that they fit nicely with the
buttons:

The add button is placed left of the server text control showing that it
adds new server names while the remove button is placed next to the list
view showing that it removes server names from the list.

The reset button is placed next to the "Synchronize" button at the bottom of
the tab group and is renamed "Reset to default server list".

This makes the window a bit taller.
2014-04-10 17:27:38 -04:00
John Scipione
deda8cad48 Time prefs: Set text colors in constructor 2014-04-10 17:27:37 -04:00
John Scipione
15cc2a1fad Time prefs: Set pointer NULL, delete in destructor
... avoiding potential memory leak.
2014-04-10 17:27:37 -04:00
Adrien Destugues
f325986993 FileRequest: identify unknown files.
* WebKit testsuite relies on the MIME types being correct, so when the
file doesn't have one, try to identify it.
* May be useful for other apps using FileRequest, anyway.
2014-04-10 08:51:00 +02:00
Adrien Destugues
a8d8e823ea HttpRequest: handle 302 and 307 redirects.
* Makes jamendo.com player work, as their soundfiles are behind a
temporary redirect for load balancing.
2014-04-10 08:50:59 +02:00
Adrien Destugues
d946ade025 ffmpeg: declare support for webm and 3gpp.
* Decoding works on the videos I tested with.
* Some videos on Youtube use these formats.
2014-04-10 08:50:57 +02:00
Adrien Destugues
41a807ec64 XHTML sniffing rule: handle utf-16 documents. 2014-04-10 08:50:56 +02:00
Adrien Destugues
a68efa7326 Add a mime type for XHTML and make Web+ the preferred app.
* WebPositive testsuite relies on the mimetype to parse xhtml files.
* This has a higher priority than HTML, because it is more reliably
detectable
* Uses the same icon as html and mhtml. Who wants to draw new ones?
2014-04-10 08:50:55 +02:00
Jérôme Duval
6fd00f80e8 scsi_periph: implemented VPD inquiry.
* declared block limits and logical block provisioning structs.
* based on SPC-4 and SBC-4 standards.
2014-04-09 20:40:11 +02:00
Pawel Dziepak
91810926dc scheduler: Fix and simplify thread migration logic in low latency mode
This patch remove the old thread migration logic which used few special
cases and (broken) general check that attempted to balance threads.

The new logic is pretty straightforward and seems perform well without
any additional special cases. Current core is compared with the least loaded
one and the thread is migrated if that would result in estimated loads of
both cores (i.e. the current one and the least loaded one) to become closer
to the average load (i.e. average of that two cores).
2014-04-09 03:24:34 +02:00
Pawel Dziepak
1bba129c56 scheduler: Let ThreadData::ShouldRebalance() choose the actual core
Currently, ThreadData::ShouldRebalance() (and mode specific functions
it calls) only decides whether to migrate thread to another core or not.
However, in most cases it actually needs to find the best candidate for
new core so it could as well return that information.
2014-04-09 03:24:34 +02:00
John Scipione
e439b00397 Fix button label position, try number 2
Create and use BLayoutUtils::AlignOnRect() to position the button label
in BControlLook::DrawLabel().

AlignOnRect(), unlike AlignInFrame(), provides the possibility to return
a rectangle with dimensions greater than the available size.

Add some comments above the methods in LayoutUtils that indicate such.

Also update copyright headers in LayoutUtils and ControlLook
2014-04-08 14:10:10 -04:00
John Scipione
f0fdd7b97a LayoutUtils: Use floorf() instead of floor() 2014-04-08 14:10:09 -04:00
John Scipione
6ecc270f57 LayoutUtils: Use std::max instead of max_c 2014-04-08 14:10:09 -04:00
John Scipione
04b48a29bd LayoutUtils: Style fix, remove leading space 2014-04-08 14:10:08 -04:00
John Scipione
4e8acd3232 ControlLook::DrawLabel() tiny style changes 2014-04-08 14:10:08 -04:00
John Scipione
c79ddce494 Revert "Fix button label position"
This reverts commit 1c69e1c306.
2014-04-08 14:10:07 -04:00
Adrien Destugues
f38165ad8c Add multipart/related MIME type for MHTML files.
* Uses the same icon as HTML. Anyone wants to design something better?
* Also add support to Web+ (not actually supported yet, but the next
version will).

These files are useful as self-contained documents (application
offline documentation), and for saving web pages in a single file.
2014-04-07 19:01:03 +02:00
Jessica Hamilton
c552bd6771 haiku_loader: search for matching shortcut in supermenus
Fixes #7469.
2014-04-07 22:14:08 +12:00
Stephan Aßmus
dc8a0aecf1 HaikuDepot: Set default icon for all packages. 2014-04-06 10:49:38 +02:00
Stephan Aßmus
726db742bd HaikuDepot: Implemented simple icon-cache.
* In a first round, icons are trying to be loaded
   from the icon cache.
 * In a second round, the cached icons are updated from the
   server, unless the icons files have been modified within
   the last hour. The web-app does support headers for checking
   if the resource has been modified since a certain date, however,
   with hvif being so small and the time it takes to connect to the
   server per individual icon being so relatively long, it doesn't
   seem worth it just yet to optimize for not actually getting the
   icon data in response.
2014-04-05 23:29:04 +02:00
Stephan Aßmus
f5ce3e39da HaikuDepot/SharedBitmap: switched to use BPositionIO...
...instead of BMallocIO specifically.
2014-04-05 23:29:03 +02:00
Jessica Hamilton
6242374090 Media Kit: fix use of pthread_once_init in FormatManager.cpp
Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2014-04-04 22:25:46 +02:00
Adrien Destugues
8bbdad1487 FormatManager: actually return the singleton instance.
This should work better.
2014-04-04 12:42:14 +02:00
Jonathan Schleifer
6a2fd3a50e Add __dso_handle to bootloader and kernel
Clang references these when building for x86_64.
2014-04-03 19:19:33 +02:00
John Scipione
f5c284eeed Style fixes to BTextView 2014-04-02 19:38:25 -04:00
Adrien Destugues
638510600c Plugin loading: style fixes.
* Fix style issues pointed by stippi. Thanks!
* Rework the FormatManager instanciation to be thread safe.
2014-04-02 14:05:11 +02:00
Adrien Destugues
bf3b475c38 Urpdate AddOnManager and FormatManager for Media Kit
* These classes were moved from Media Server, making the use of ports
and messages to communicate with the app irrelevant.
* Split in a separate commit to help git keep track of moved files.

Fixes #4893.
2014-04-02 09:56:34 +02:00
Adrien Destugues
2feaa37f24 Move media plug-in support to application side.
The media server tried to use node monitoring to dynamically add and
remove plug-ins, but it isn't that useful:
* When a plug-in is added, applications would have to query the media
server to get an up to date list of available formats. For example
MediaConvert populates its format menus on startup.
* When removing a plugin, if an app already had it loaded, there is not
much that can be done to keep it working.
* The list of plugins was not sorted by directories (user vs system
add-ons), so the directories were re-scanned to make sure user add-ons
were returned first, rendering the node monitoring less interesting.

Now, the format handling is done by each application. The node
monitoring is removed, instead the apps will scan the plugin directory
when first using the media kit classes. Restarting the application is
needed to update the media formats list.
2014-04-02 09:56:32 +02:00
John Scipione
1c69e1c306 Fix button label position
This reverts a portion of hrev46580 concerning placement of a label on a button.
The label was draw too low on the button in some cases, notably in Keymap.
Restoring the old code for the icon-less case fixes the problem.

There still may be a problem drawing labels on buttons with icons, but, the code
should behave the same as it did in hrev46580 for that case, which is when
buttons with icons was introduced.
2014-04-01 17:19:00 -04:00
John Scipione
8fbf8d56f6 Time prefs: Enable add button if server name valid
* Add button is disabled initially (as the server name is blank)
* Use B_FAILURE_COLOR when server name is invalid instead of hardcoding red
* Some code refactoring
* Some style fixes
2014-03-31 18:57:46 -04:00
John Scipione
62b45ce190 Time prefs: Disable remove button if list empty 2014-03-31 18:46:12 -04:00
Adrien Destugues
48058f7bc9 Media_server: use find_paths_etc.
* Replace code to find the plug-ins with the new APIs.
* Prepare for hybrid-aware code (but we need to use the app
    architecture, not the media_server one)
2014-03-31 17:39:35 +02:00
Adrien Destugues
d71e18fef4 Build media plugins for the secondary arch.
These are used when an app uses BMediaFile/BMediaTrack, which leads to
the plug-ins being instanciated on the application side.

* Fixes one more part of #10049 (media add-ons are still missing).
* Will probably not solve any real-world issue because of #4893.
2014-03-31 15:32:31 +02:00
Adrien Destugues
943b310c90 Data URLs: fix size computation.
The decoded data is 3/4 the size of base64 encoded, not 4/3.
2014-03-31 09:59:12 +02:00
Jessica Hamilton
575984d2e5 MediaConverter: Filter out non-writable media file formats. Fixes #10724
* With the muxer & demuxer tables merged in hrev47063, the
   list of output formats included media file formats that
   weren't flagged as writable

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2014-03-31 08:15:00 +02:00
Stephan Aßmus
a87c4748e5 app_server: Restore previous rounding
46b39e8378 contained a change to the
rounding for non-subpixel-precise drawing. This changes it back
from using round() to casting to int32. This also reverts a change
to StrokeLine() which meant that lines on integer pixels appeared
at the same location regardless of using B_SUBPIXEL_PRECISE or not.
On further thought, this doesn't make any sense, since it means
to treat the meaning of coordinates different for stroking and
filling. This fixes WonderBrush's brush tip preview, but breaks
Gobe Productive's caret rendering for zooms smaller than 150%.
The change to the rounding fixes #10690.
2014-03-30 22:28:14 +02:00
Axel Dörfler
0acae24ee7 Added simple Alert test application. 2014-03-29 23:11:44 +01:00
Jonathan Schleifer
6c95865236 Replace a few equ with %define to make nasm happy
Interestingly, it only complained about some of them. Changing them all
to %define though, as equ means it should try to evaluate it once, which
of course it can't really if those are ebp+CONSTANT.

Didn't catch those since I wasn't building gcc2h.
Thanks to jessicah for reporting and testing the fix!
2014-03-29 05:07:54 +01:00
Rene Gollent
133af3f5e1 HaikuDepot: Fix x86 build. 2014-03-28 22:12:06 -04:00
Jonathan Schleifer
d6f8092732 Sorry, my last commit was incomplete 2014-03-29 02:29:52 +01:00
Stephan Aßmus
5bd5f161e8 HaikuDepot: Populate package icons from web app.
* Transformed ConnectionTest into WebAppInterface
 * Added methods to Model to trigger the population of all packages
   with additional information that is needed in the list view.
 * This launches a thread which tries to retrieve icons for all known
   packages from depot.haiku-os.org. This is uncached and very slow. I
   guess it could even be fast enough with a change to the protocol where
   icons are not retrieved one at a time.
2014-03-28 23:49:29 +01:00