Commit Graph
100 Commits
Author SHA1 Message Date
Adrien Destugues aa272ca35c Package Kit: reduce identifer/base-url confusion
For historical reasons, the package kit has an "url" field that is not
actually meant to be used as an URL. Rename it in the API and user
facing output as "identifier" to make it clear what the file is used
for. This change preserves the "url" key in on-disk and online storage
(hpkr files, stored settings, etc) in an attempt to not break anything.

Fix one remaining misuse of the "url" field as an URL in
get_package_dependencies.

Add an unit test showing that BUrl does parse "tab" URIs properly (there
is just a protocol and a path segment).

Change-Id: I339ce526e5798d42d78ae650855d7e988dbb4a1a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2542
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 20:04:50 +00:00
Adrien Destugues 5ef5cba68a Mail: layout-ify the Find panel
Fixes #13163

Change-Id: I2880b3dcd824087ee998a5dd67c5e9d904b5874d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2629
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 19:43:07 +00:00
Adrien Destugues 2b4c59635f Appearance: add some extra margin around menufield labels
The font antialiasing settings make the font rendering change. It can
make strings longer or shorter, and this can result in the menufield
being moved by a few pixels. So add a safe margin around the menu field
to accomodate for it.

Fixes #13039.

Change-Id: I73de08b747dc8cade58bcc674dd4f94fb6a9f9eb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2630
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 19:41:27 +00:00
Adrien Destugues 39c68f46dd Remove deprecated build profiles @image and @vmware-image.
The @image build is not used anymore and doesn't work. Use @nightly-raw
or @nightly-anyboot instead. The new method of release type/image type
configuration of profiles is more flexible and allows to manage the
various configurations a lot more easily for us. But the old profiles
were never formally deprecated.

Fixes #15963

Change-Id: I1c72f0e77bfbcda10502476e595f120280e8c7a4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2625
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 19:35:06 +00:00
Adrien Destugues 8bb5fd2437 StyledText translator: use a larger buffer for encoding detection
It may be the case that a file is largely ASCII with few UTF-8 or
similar characters (typically, english text mentionning names in other
languages). It turns out 2 kilobytes of text is not enough for a safe
guess in that case.

Fixes #14674

Change-Id: Id894bebb821c22a17b776a71822d011abc795dea
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2628
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 19:34:22 +00:00
Adrien Destugues 693e2f4fb4 app_server: actually invalidate decorator area on window close
More completely fixes #12085

Change-Id: I73bf987f06422bebbfc739d3700c11edad928646
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2621
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit a16c358d59b43b1e274b323105d24ce4e9f97292)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2634
2020-05-09 19:31:08 +00:00
Adrien Destugues 22337d8f4b uchar.h: char16_t must be uint_least16_t
We attempted to make it a 32bit char type, but that is actually not allowed
unless we also make uint_least16_t a 32bit type. And even then, we
wouldn't be allowed to store or handle values wider than 16bit.

Comply more closely to the standard. As a result, mbtoc16r is not
implemented. c16rtomb is implemented by casting the char to 32bit, which
isn't really correct either (I think you're supposed to be able to feed
the two halves of a > 16bit codepoint in two separate calls and get a
meaningful result out?)

Related to #15990 but we may want an actual implementation?

Change-Id: If8198675c27dd2aa412bc44d12d3df4e31d3e8c7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2623
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 19:29:28 +00:00
Adrien Destugues 566914fad4 AboutSystem: some updates to the contributors list
- Move Kyle Ambroff-Kao to the maintainers
- Add Diver, Vidrep and Luroh as bug triaging and testing team (your
  work deserves more credit, thanks a lot!)
- Move Koki back into "past website/marketing team"

Change-Id: I3f198277804aaa2dedf0551ced65e5f94393f3ea
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2624
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 19:28:44 +00:00
Adrien Destugues fc86ef2cef Revert "Add-ons: Add alert warning to PNGTranslator"
This reverts commit 450208975b.

The alert is not appropriate because applications cannot intercept it.

Fixes #15734

Change-Id: I5be98367ae615a572193406a559e5d34617e445c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2626
Reviewed-by: waddlesplash <[email protected]>
2020-05-09 19:27:07 +00:00
Adrien Destugues 2edfb7b145 DeskBar: misplaced NULL check
- Main problem was that lastItem was accidentally used outside of a NULL check
- Also cleanup initialization and reset of fLastClickedItem (it is now valid
  from mousedown on an item to either mouseup, or when the team dies)

Fixes #15991

Change-Id: I82e30303c50a61b9d44c092347f067dcb1105006
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2619
Reviewed-by: Adrien Destugues <[email protected]>
2020-05-09 13:22:30 +00:00
Adrien Destugues 24337d5342 DecorInfo missing from libbe catalog.
Fixes #15971
2020-05-09 13:56:43 +02:00
Adrien Destugues 8d9eff5881 ext2: report ext2/3/4 fs name depending on available features
Should help with #12157.

Change-Id: I7ea0310957c06606bc66a289afe8c3a78540a803
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2610
Reviewed-by: Kyle Ambroff-Kao <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
2020-05-09 08:36:12 +00:00
Adrien Destugues 7362b02b0e TabDecorator: fix invalidation when removing a tab.
Fixes #12085.

Change-Id: I346e39ba4dc6befe97f33f8ff409a6ac84ae8585
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2609
Reviewed-by: waddlesplash <[email protected]>
2020-05-08 22:09:50 +00:00
Adrien Destugues 09af7c139b Tracker: fix layout of find panel.
A minimal layout cleanup for beta2. Further changes were proposed in a
separate ticket, #9781, maybe for later.

Fixes #9780.

Change-Id: I1f66d808bd2cea683aa9f3a905cdf5717f1824ef
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2607
Reviewed-by: waddlesplash <[email protected]>
2020-05-08 22:07:55 +00:00
Adrien Destugues 9670db20dd Tracker: add some time_t overflow checks in StatusWindow
Don't pretend file copies will end in 1901, that's obviously wrong.

Helps with #11176, but we should really not use time_t here, or make it
64bit.

Fun fact: we're now closer to the end of the UNIX epoch than to the creation
of Haiku!

Change-Id: I64acc5ab29fb778fe3034c65b5a8418951d30505
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2608
Reviewed-by: waddlesplash <[email protected]>
2020-05-08 22:07:08 +00:00
Adrien Destugues 1826e60db5 Do not locate DeskBar window by its name
The name changes when translations are enabled. Use the index instead.

Fixes #8982.

Thanks to X512 for catching the problem!

Change-Id: I3c4e943f8476e46e7378a50e83a7758f694a8dc0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2606
Reviewed-by: Axel Dörfler <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2020-05-08 14:03:03 +00:00
Adrien Destugues 2dc597d50d Optimize ffs() implementation
- Use gcc builtin
- Define as a static inline function in the .h so no function call overhead is needed
- Keep the function in libroot for backwards compatibility
- Remove a duplicate implementation in the freebsd compatibility layer

gcc2 does not document the builtin, but it is in fact already available
there as well.

Fixes #3281.

Change-Id: I94f8a2548637aa70e85febbfab06f07c1a427005
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2605
Reviewed-by: waddlesplash <[email protected]>
2020-05-08 14:01:53 +00:00
Adrien Destugues 9792465ec1 usb_midi: avoid crash if trying to write a partial MIDI event
thanks to nilsding for investigating!

Fixes #15562.

Change-Id: I014769afb507881f14f69fb1cd65215dc52920c6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2048
Reviewed-by: Jérôme Duval <[email protected]>
2020-05-05 09:26:26 +00:00
Adrien Destugues 325ca7f19c mkdos: some style cleanups
Change-Id: I943b202f0a745d623aa76417ea2090b4becb0ac4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1322
Reviewed-by: waddlesplash <[email protected]>
2020-05-03 19:16:17 +00:00
Adrien Destugues c39f9cc827 SoftwareUpdater: fix crash on exit.
Don't delete or Quit() a BWindow, it can do so by itself. Also, do not
rebuild a BMessenger everytime we want to message a window, that defeats
the purpose. There are still places where the UpdateManager calls
functions from the window object directly however, ignoring the fact
that the window may have been closed.

Fixes #13653.

Change-Id: I868e94a07d9617f343332ea00d35ffd92e60ed8e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2552
Reviewed-by: waddlesplash <[email protected]>
2020-05-03 15:48:19 +00:00
Adrien Destugues d0e1eb7a7b mark abort() function as noreturn.
It was not specified as such before C11, but that's only because there
was no C standard way to do it until then.

Fixes #15955.

Change-Id: Ied7b7fd94988ed7724460917aebc859b74eaa585
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2558
Reviewed-by: waddlesplash <[email protected]>
2020-05-03 15:42:41 +00:00
Adrien Destugues 3268566c20 Input: fix infinite loop
Right shift on a signed value can extend the sign bit, which would make
this function do an infinite loop if passed a negative value. Use an
unsigned instead to get the behavior we want.

Fixes #15957, but this means we're using undefined data from the
settings file. I assumed it would have the unused button values set to 0
but this isn't apparently the case. Preetpal is already working on that
as we noticed the problem when testing her patch for adding a 6th
button.

Change-Id: I62fdc778ff3b9da92f3aa5570163dc60baf8cf2c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2560
Reviewed-by: waddlesplash <[email protected]>
2020-05-03 15:41:49 +00:00
Adrien Destugues 92290d9bc3 ffmpeg: return B_LAST_BUFFER_ERROR when decoding completes.
Fixes #13622.
Fixes #14773.
Fixes #15220.

Change-Id: I2c20b421d25b450714209f4f4f4205d61145e615
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2551
Reviewed-by: Jérôme Duval <[email protected]>
2020-05-02 18:47:41 +00:00
Adrien Destugues 96240a75f1 FirstBootPrompt: fix a typo 2020-05-02 12:36:49 +02:00
Adrien Destugues 5c1b8016d3 FirstBootPrompt: smarter keyboard layout selection
Change-Id: I6501f8a697039c4c4d600d544e0ce6659d2b5dfe
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2539
Reviewed-by: waddlesplash <[email protected]>
2020-05-02 00:54:48 +00:00
Adrien Destugues 5c2709cdd5 Firstbootprompt: remove flags from languages.
http://www.flagsarenotlanguages.com

Add some other icons to make the window a bit more spicy as suggested by
Axel.

Change-Id: I859cefc7f5cb99f9a5465902c9d471f0b9857b71
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2527
Reviewed-by: waddlesplash <[email protected]>
2020-05-02 00:53:01 +00:00
Adrien Destugues af6ecfa5a2 Pulse: remove ugly border around main view.
Probably a leftover from when the window used B_NO_BORDER?

Change-Id: Ie266b0374b6983747d842165b602a199d6685662
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2526
Reviewed-by: waddlesplash <[email protected]>
2020-04-28 17:17:35 +00:00
Adrien Destugues 5fd6feed3e Tracker: fix checkbox positions in InfoWindow.
Fixes #15914.
2020-04-27 20:17:51 +02:00
Adrien Destugues 8a397b0541 BTabView: use the back/forward buttons to switch tabs
Note that for this to work well, the child views in the tabs must
propagate MouseDown events up for these buttons.
2020-04-19 11:30:16 +02:00
Adrien Destugues dd0e8e49f3 intel_extreme: filter out some video modes
Only in the specific case of:
- Generation 2 or 3 hardware (with a limited panel fitter)
- No EDID is found (so we have no idea about timing limits)
- A VBT is found (so we know the native resolution of the LCD panel)

Only in this case, restrict available resolutions to the ones not larger
than the VBT mode. Larger resolutions don't work and result in a black
screen.

In all other cases, we should normally figure out appropriate
resolutions from the EDID limits and our well-known modes list.

Change-Id: I3bba9f53b92c4c647e0d644fa0181f6fe96d1fc4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2235
Reviewed-by: waddlesplash <[email protected]>
2020-04-18 18:25:19 +00:00
Adrien Destugues 7ba52abdd3 BTabView: use the back/forward buttons to switch tabs
Note that for this to work well, the child views in the tabs must
propagate MouseDown events up for these buttons.

Change-Id: I503d7203cb20e6ba85bd0d7e1cfaed988e3cf17b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2207
Reviewed-by: waddlesplash <[email protected]>
2020-04-18 18:20:37 +00:00
Adrien Destugues 5bbf7f1be0 Actually handle more than 3 mouse buttons
The code in input_server was pretty much all set for this, but there was
no way to configure the extra buttons. Add them to the mouse view in
Input preferences (up to 5 buttons are handled now)

Define a new B_MOUSE_BUTTON(n) macro to generate the bitmask for a given
button (numbered from 1).

Change-Id: I9091082277937d89b08464ff474e7bbb5db82401
Reviewed-on: https://review.haiku-os.org/c/haiku/+/180
Reviewed-by: waddlesplash <[email protected]>
2020-04-18 18:20:37 +00:00
Adrien Destugues e4225c3b0e Remove struct size hacks in net80211
wpa_supplicant needs to be rebuilt
against it and then this needs to be tested.

Added some FIXMEs to keep track of places I'm not sure if we need to
change anything.

Fixes #14805

Change-Id: I6379dc32b772289960afbfb362365a542a986983
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2225
Reviewed-by: waddlesplash <[email protected]>
2020-04-12 21:09:30 +00:00
Adrien Destugues 48da5bf8ac intel_extreme: Do not early-enable the pipe on pre-SandyBridge
Should fix #15861.
2020-04-12 10:29:36 +02:00
Adrien Destugues 61557c8240 BListView: do not spawn a thread on every mouse click.
That's a bad idea. The drag and drop tracking could get confused enough
to crash app_server (possibly because of calling InitiateDrag multiple
times?)

Fixes #14983.
2020-04-04 11:50:07 +02:00
PulkoMandy 18da5c3042 Bootloader log: check for buffer overflow
We could overflow the in-memory log. The bounds check was there for BIOS
already but was missing in EFI and openfirmware. Could fix some crashes
when there is lots of loging.
2020-03-21 18:30:25 +01:00
PulkoMandy 99195e3c36 bootloader ethernet: fix tracing 2020-03-21 18:30:25 +01:00
PulkoMandy a207d7b35b bootloader: reduce verbosity
- Disable tracing where it's not needed by default
- Convert some drpintf to TRACE statements
- Comment some dprintf out completely in files that don't have a TRACE
  macro.

Change-Id: I1f6062bce74bcf1dbf77bf7bccadeeb12a4df46c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2370
Reviewed-by: waddlesplash <[email protected]>
2020-03-16 22:33:13 +00:00
PulkoMandy ae5a068f62 openfirmware: implement the in-memory log
We should probably make this code more platform-generic, the
implementation is very similar to the EFI one.

Change-Id: I17c9db933bfc2a81c96816dd6348d2d0c9627951
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2369
Reviewed-by: waddlesplash <[email protected]>
2020-03-16 22:33:13 +00:00
PulkoMandy 442a131da7 bootloader: additional keyboard commands
In the boot menu, tab cycles between the menu items.

In the pager for logs, j and k allow to scroll the log (vim style keys).

These allow using the pager and menu on Sun machines, where Openboot
does not manage the keyboard arrow keys. It may be possible to get more
low-level input from the keyboard openboot device, but I think it is not
worth the effort for now, especially as we would need different handling
for the local keyboard and for serial ports.

Change-Id: I5fe74eb9f7a952ae49ae3c8a6bfae6ba4a16ae07
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2368
Reviewed-by: waddlesplash <[email protected]>
2020-03-16 22:33:13 +00:00
PulkoMandy 9ebce09880 openfirmware: alternate implementation for console
If I understand the openboot specification correctly, we should not call
the forth words directly. Instead, we should rely on the
terminal-emulator package to parse ANSI escape sequences and manage the
display for us.

Unfortunately, the ANSI parser is very limited, many sequences don't
work, including the ones for colors. But we can at least have inverse
video, which is good enough to let the menu show.

I think the PowerPC console can be modified to use the same code, at
least partially. So for now I'm keeping this code in a cross-plaform
file.

Change-Id: Ie77b9ddcc18acb735c0d77cb574e28fbabd266e6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1989
Reviewed-by: waddlesplash <[email protected]>
2020-03-16 22:33:13 +00:00
Adrien Destugues 4f44282c3b Move source and development packages out of /system/packages on release images
Activating all these packages on live boot (especially live DVD where we
also have the write overlay eating up RAM) significantly increases
memory requirements for running Haiku, to the point that Installer may
fail to run. Move them outside the packages/ directory so they are not
activated.

Installer already skips the _sources_ directory when installing, and
lists the contents of _packages_ with checkbox to decide what to include
in the install (they are put in system/packages on the target disk).

Fix from previous version: the Haiku package was installed to /system
instead of /system/packages.

Fixes #15621.
2020-03-16 10:32:00 +01:00
PulkoMandy e3952a44cd sparc: notes on network booting 2020-03-16 09:53:14 +01:00
PulkoMandy edfce7b327 openfirmware: fix dma-alloc for sparc
The dma-alloc method is in the parent node (the PCI bus), not directly
in the network device.

Change-Id: I18f6a9333f3afa78033042e75a86b00872515f2c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2359
Reviewed-by: waddlesplash <[email protected]>
2020-03-15 19:54:01 +00:00
PulkoMandy 0f33dfcce5 openfirmware: fail if IP address can't be found
Sending packets from 0.0.0.0 doesn't work quite right, so better admit
we failed.

Change-Id: Iddece4a7269abbdd8e93f0cbbc9a9e43fcbe8a69
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2358
Reviewed-by: waddlesplash <[email protected]>
2020-03-15 19:54:01 +00:00
PulkoMandy 9a515368b7 openfirmware: another way to find the MAC address
Of course Sun and Apple didn't put it at the same place...

Change-Id: I974caff7335bb25a0e8dd4f7da8bdb9a737d011e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2357
Reviewed-by: waddlesplash <[email protected]>
2020-03-15 19:54:01 +00:00
PulkoMandy 4e134b546a openfirmware: remove real_time_clock.
It is used only in the TCP loader to initialize a random TCP source port.
Since the RTC device does not exist on sparc, this is not portable. A
simple solution is to use a non-random source port, maybe based on the
powercycle count or something like that. For now, I don't need the TCP
loader, so I'll just disable this.

Change-Id: I6e279a77bb90a8b8b989f06dd9fb256156f71635
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1988
Reviewed-by: waddlesplash <[email protected]>
2020-03-15 19:54:01 +00:00
PulkoMandy 5424c3a22e sparc: workaround for Netra T1 105
The address-size property is missing, but we don't really need it.

Change-Id: Iff3de89c811d16a263eadf796a0e6eb157dbe18b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2356
Reviewed-by: waddlesplash <[email protected]>
2020-03-15 19:54:01 +00:00
PulkoMandy 6d929a001e sparc: fix boot MMU code
Apparently it worked by luck only on the Ultra60. Physical addresses for
openfirmware are on two cells (128 bits!) and we were passing only one
cell, of course this wouldn't go well. On the Ultra5 it ended up having
the heap point to unused space besides the RAM, so it was mostly reading
random data from there.

Change-Id: I4f9010013fe91a582e5daa83e6bf458703adba2b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2350
Reviewed-by: waddlesplash <[email protected]>
2020-03-15 19:54:01 +00:00
PulkoMandy 5f86d837c0 openfirmware: fix of_seek for 64bit systems
The position is on 2 cells even on 64bit systems.

Change-Id: I97f4e3fc02734c548ed23445a917a894ff548379
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2351
Reviewed-by: waddlesplash <[email protected]>
2020-03-14 19:37:59 +00:00
Adrien Destugues 0ab9c3c538 Move source and development packages out of /system/packages on release images
Activating all these packages on live boot (especially live DVD where we
also have the write overlay eating up RAM) significantly increases
memory requirements for running Haiku, to the point that Installer may
fail to run. Move them outside the packages/ directory so they are not
activated.

Installer already skips the _sources_ directory when installing, and
lists the contents of _packages_ with checkbox to decide what to include
in the install (they are put in system/packages on the target disk).

Fixes #15621.

Change-Id: Ibfac14c43dbe708316a0d82ca1c9d49b5cba2aef
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2157
Reviewed-by: Sergei Reznikov <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2020-03-14 18:31:23 +00:00
Adrien Destugues 768f6b3bc4 Fix build for non-EFI architectures.
Change-Id: Ic2c8a9a64e63f4b844e964eb1066291d2edda7b3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2343
Reviewed-by: Adrien Destugues <[email protected]>
2020-03-14 18:28:24 +00:00
Adrien Destugues 228006ea74 package_daemon: fix path of activated-package files
Until now the activated-packages file was not used for anything, because
it was not looked for in the correct place.

Change-Id: Ib38f28b52e85af6900c0e2b61a9621734428ad25
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2341
Reviewed-by: waddlesplash <[email protected]>
2020-03-14 18:27:35 +00:00
Adrien Destugues 6a30d84f3c add some docs for agp_gart and intel_extreme drivers
Not a lot of info there yet, but it's a start.
2020-03-13 15:42:03 +01:00
Adrien Destugues 22ec64553f intel_extreme: some minor fixes
- Cleanup HEAD_MODE constants. These should be completely removed, now
  that we have a proper notion of pipes and displays. But the DPMS code
  still uses them, for now.
- Fix the ie_pipe command where width and height were swapped and
  missing a +1 to show the actual videomode values
2020-03-13 15:42:03 +01:00
Adrien Destugues f16db28447 intel_extreme build fix 2020-03-09 20:37:47 +01:00
Adrien Destugues 23be24d2d2 intel_extreme: fix panel fitting code
This could also help with VGA output, a logic error in the pipe code
would lead to never configuring the pipe resolution. May help with VGA
output on SandyBridge and IvyBridge (but I get DPMS off on my laptop for
now, so I think something isn't quite right yet).
2020-03-08 16:01:43 +01:00
Adrien Destugues 168aff90a7 intel_extreme: program the DPLL_SEL register on SandyBridge
We need to assign PLLs to pipes and transcoders. The assignments on
previous generations were fixed, but now it's up to us to set it up.

Do the simplest thing for now: assign PLL1 to pipe A and PLL2 to pipe B.
2020-03-08 16:01:43 +01:00
Adrien Destugues 7991d1b79d intel_extreme: fix assigning pipes to displays
The previous code did not handle correctly the case where a display
requested a fixed mapping, and cloud end up assigning the same pipe to
multiple displays. But we want a separate pipe for each display,
allowing multihead support later on.

Rewrite the algorithm to first assign pipes to devices with fixed
constraints, and in a second pass assing the remaining pipes to other
displays.
2020-03-08 16:01:42 +01:00
Adrien Destugues deb591ec89 intel_extreme: fix detection of BDB block with LVDS panel info
The terminator is not always present, but the mode (at least the fields
we use) seems to be there nonetheless.
2020-03-08 16:01:42 +01:00
Adrien Destugues 54e9c79ba4 nvme: build fix. 2020-03-08 16:01:42 +01:00
Adrien Destugues f029289cbd hvif2png: allow larger sizes.
What if I need some high resolution rendering of icons?

Also fix the error message for out of range/unparsable sizes that would
show "-s" as the problematic size.
2020-03-01 17:25:01 +01:00
Adrien Destugues 0e7d1f13e0 AppInfoList: make sure to dereference symlink before comparing
May fix #15633 (untested)

Change-Id: Id0c8f0617553d988e767bae46fe0ac8fd3e698e9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2118
Reviewed-by: Adrien Destugues <[email protected]>
2020-02-25 12:23:23 +00:00
Adrien Destugues 8e1e00129c Installer: handle hpkg files in _packages_ directory
Fixes #14310.

Change-Id: Iafd75b86d242af816a089dd1bdaea2c697668f5d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2184
Reviewed-by: Adrien Destugues <[email protected]>
2020-02-20 16:25:38 +00:00
Adrien Destugues 3d11fed209 Installer: fix drawing of optional packages view
Rework the layout of the installer window, do not try to put everything
in a single grid but instead use a mix of grid and groups as
appropriate, which keeps things simpler.

Make the width of the window more font sensitive.

Have the package view properly resize with the window, and the items in
it still draw properly (checkbox and name on the left, size on the
right)

The menu fields for source and destination don't need to extend to the
whole window width, so allow them to be smaller.

Fixes #5785

Change-Id: If0683f610b9e7f3629d51d25c1d8e8b00c101156
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2185
Reviewed-by: Adrien Destugues <[email protected]>
2020-02-10 09:49:51 +00:00
Adrien Destugues 11d738a430 wacom: remove control device
It is unused, and it leads to an unexpected entry in the Input
preferences.

Change-Id: I68f31c3ae6baca7be1a5d6070dc1ebcf04522dad
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2208
Reviewed-by: waddlesplash <[email protected]>
2020-02-09 22:21:40 +00:00
Adrien Destugues 8854b89737 PaneSwitch: fix a layout issue with large font sizes
This is used in Find window and also in Installer.

Remove some unused code (I think leftovers from Tracker InfoWindow
refactoring).

Change-Id: Ic0dd07e06c11b3839adbe5b8ef9598a5b16171a6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2234
Reviewed-by: waddlesplash <[email protected]>
2020-02-09 20:52:27 +00:00
Adrien Destugues 980a393047 intel_extreme: build fix, remove unused variables. 2020-02-09 18:39:17 +01:00
Adrien Destugues af8d74ae10 intel_extreme: fix width of interrupt register.
The driver had been using 16 bit reads and write (introduced by Axel in
2006), but the hardware documentation (released in 2008) says the
register is 32bit. Use 32bit since that makes the code identical to
what's used for later devices.

If 16bit is needed, it's only for the pre-2008 devices.
2020-02-09 17:32:27 +01:00
Adrien Destugues 015fbeab9c intel_extreme: fix pipe selection for Ivy Bridge and later
Should fix #15661 and #15662.
2020-02-09 15:40:52 +01:00
Adrien Destugues 0e280da525 SecureSocket: fix non-blocking reads
OpenSSL says we should retry when a non-blocking read finds no data is
pending. But in that case we should not retry immediately, because the
operation should be non-blocking.
2020-02-08 22:21:27 +01:00
Adrien Destugues 445de1d348 Use Input preferences
And remove Mouse, Keyboard and Touchpad.

Userguide and localizations will need to be updated.

Change-Id: I4543b2b63367cd13562c542610bad34b5934b103
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2210
Reviewed-by: waddlesplash <[email protected]>
2020-02-08 17:03:19 +00:00
Adrien Destugues 31ff65f62f Installer: better computation for minimal window width
The width of the status messages should not depend on the width of the
logo. Reserve about 30 characters no matter which logo is used (this is
slightly larger than it used to be).

Fixes #15679.
2020-02-06 22:39:43 +01:00
Adrien Destugues 145f127f3a Input preferences: fix crash and add icon
Fixes #15680.
2020-02-06 22:30:12 +01:00
Adrien Destugues ffd6c2f4bd input_server: use a better name for trackpoint devices
Now that the names are visible in Input preferences, let's try to have
better ones

Change-Id: Ia67e57c449e0ad292ce573b50a1e533d84c90d68
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2209
Reviewed-by: waddlesplash <[email protected]>
2020-02-06 07:29:13 +00:00
Adrien Destugues a206dcc221 usb hid: implement horizontal scrollwheel
- Fix USB_hid_page_consumer.h: some values are skipped in the spec so
  our defines were off
- Handle the horizontal wheel on my mouse which is declared as a
  CON_AC_PAN, but otherwise works just like the vertical wheel
- Input server and interface kit already handle the events properly
  (they were available for serial mice already).

Change-Id: Ie0080ebb27e9478bcfe9f9dc5fd2a936ae05a848
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2201
Reviewed-by: waddlesplash <[email protected]>
2020-02-06 00:10:10 +00:00
Adrien Destugues 0f9ffb37c1 Add a Person file to tracker new templates
Fixes #9397.
2020-02-05 21:25:22 +01:00
Adrien Destugues 53db2fc8cf Installer: Missing break
Leading to opening two Installer windows after closing EULA.

Thanks to Diver for reporting!
2020-02-04 21:10:12 +01:00
Adrien Destugues 79ded8ca16 Reduce polling interval for low-speed devices
Fixes #7651, my Logitech gamepad works.

Change-Id: Ia3f92ba817576946dabee262a2fd5af8102a109f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2198
Reviewed-by: Stephan Aßmus <[email protected]>
2020-02-04 20:05:10 +00:00
Adrien Destugues 8769583f90 Build fix. 2020-02-03 22:19:22 +01:00
Adrien Destugues 3bea15adca BSecureSocket: retry reads after interrupted syscalls.
SSL_AUTO_RETRY does not cover this case (it only covers SSL errors, not
underlying socket ones), so we still need to retry reads manually here.

Fixes #14638.
2020-02-03 21:47:08 +01:00
Adrien Destugues 9762e2fe45 Update readme.compiling
- Clarify why building jam is not needed on Haiku
- Put the 64bit instuctions first, as they apply to both Haiku and other
  platforms and are the way to go for people discovering Haiku, usually
  (only oldtimers will care about BeOS compatibility)
- Remove the "from non-haiku platforms" from 64bit instructions because
  they work just fine on Haiku as well
2020-02-03 13:39:46 +01:00
Adrien Destugues d439721d6c Bootloader menu: update copyright year. 2020-02-03 12:28:06 +01:00
Adrien Destugues cc55d41273 efi loader: implement simple in-memory log
This lets us see the bootloader log from the boot menu, which is very helpful
on machines with no serial port or other way to debug.
2020-02-03 12:28:05 +01:00
Adrien Destugues dcee1c8ce4 Installer: do not Quit() the EULA window directly
Fixes #15021.
2020-02-03 09:45:46 +01:00
Adrien Destugues af5b356d7d Installer: small tweak to layout
Should fix #14574.

Change-Id: I0aa13eda0af936d371664c678a6ff5b8ceabff79
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2181
Reviewed-by: waddlesplash <[email protected]>
2020-02-02 23:45:05 +00:00
Adrien Destugues 8095ab5a4b Installer: use Walter as a placeholder logo
For non-official builds, Installer had no logo. This led to a window
sizing bug which is not seen in the official builds (both nightlies and
releases) as they both use the Haiku logo there.

Use Walter as a placeholder logo in that case. The png is generated from
the wonderbrush file in the separate artwork repo.

Change-Id: Iea361d7ac0fd2bdb147318632ff198c86c4b89c2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2180
Reviewed-by: waddlesplash <[email protected]>
2020-02-02 23:45:05 +00:00
Adrien Destugues fdc13d7d97 Installer: do not allow installing to read-only partitions.
This would probably not work, right?

Fixes #14614.
2020-02-02 22:14:39 +01:00
Adrien Destugues 3aba70f980 install_wifi_firmwares: fix build of b43-fwcutter
byteswap.h was removed from glibc in current versions, so point to an
older git revision to get it.
2020-02-01 09:28:39 +01:00
Adrien Destugues 88d73c6cf8 intel_extreme: set the "image size" register on generation 4 and below
This is undocumented, but required for GMA 945 and probably earlier
devices as well. The register is reserved in later generation 4 devices,
and not mentionned at all in later versions.

Fixes #15655.
2020-01-28 18:56:59 +01:00
Adrien Destugues 2d697067b2 Further cleanup/optimization of system_time
On gcc4, we can use the __rdtsc builtin. On gcc2, provide a similar
inline-able version of rdtsc, and remove the rdtsc function written in
assembly, saving a call/ret on every call.

There has been some discussion about performance, but note that this is
only bootloader code, it is not used when the system is up and running,
therefore performance is not that critical.
2020-01-27 21:46:43 +01:00
Adrien Destugues d6a742cafd DeskCalc: Use IsLocked() instead of Lock()
As suggested by korli.
2020-01-26 14:44:12 +01:00
Adrien Destugues 947faad871 Remove mercurial sources from release images
We don't ship the binaries, so I don't see why we would ship the
sources.
2020-01-26 12:40:01 +01:00
Adrien Destugues edb3467aca BView::DrawBitmap: document "options" parameter 2020-01-26 11:24:04 +01:00
Adrien Destugues f8969c78e5 DeskCalc: use an autolock to simplify clipboard handling. 2020-01-26 11:23:41 +01:00
Adrien Destugues 190d0372b3 Fix system_time implementation
When refactoring this and writing a common implementation for x86 and
x86_64 I missed a step in the calculation. We need to divide by 2^32 to
keep the value in the expected range.

Fixes #15658.
2020-01-26 10:44:05 +01:00
Adrien Destugues 3cba7254a8 DeskCalc: fix gcc8 build. 2020-01-25 22:52:50 +01:00
Adrien Destugues cddaf7625c btrfs: fix build. 2020-01-25 22:09:42 +01:00
Adrien Destugues 670af4fc7b More build fixes. 2020-01-25 21:35:34 +01:00
Adrien Destugues 1bd3bfd038 DeskCalc: fix build.
Apparently, this code was submitted to Gerrit without checking if it
built.
2020-01-25 19:54:31 +01:00