* 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.
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.
... 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.
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.
* 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.
* 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?
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).
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.
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
* 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.
* 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.
* 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.
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.
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.
* 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