Commit Graph
68340 Commits
Author SHA1 Message Date
John Scipione 783ceb6c24 Tracker: Sort volumes before folders if you have "List folders first"
setting turned on (default on). Implements #19807

Sort root (aka Disks) before volumes and folders.

strcasecmp => NaturalCompare in one more case.

Change-Id: Ib907ae07edd47e802dcf4263e1bd676e1fa074ae
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9761
Reviewed-by: humdinger humdinger <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: John Scipione <[email protected]>
2025-11-30 19:05:25 +00:00
John Scipione b109d591fa Tracker: File panel responds to Tracker Window settings.
Change-Id: Ie9cf791566a20b4d44987ee84a7a34e78cccd136
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9763
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: John Scipione <[email protected]>
2025-11-30 19:05:25 +00:00
John Scipione d7022afd57 Tracker: Simplify adding/removing poses when mounting/unmounting
... and sorting.

Change-Id: Ia72e85d12682d4f77200629f3f5f278a9a40c423
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9890
Reviewed-by: John Scipione <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-30 19:05:25 +00:00
John Scipione 1584b1ecab Tracker: BPoseView replace BView with _inherited and style fixes.
Change-Id: Ic24f4ee3831a94a659cc584e5b4393f08695061d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9889
Reviewed-by: John Scipione <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-30 19:05:25 +00:00
Nathan Patrizi 0e2e36f650 MediaPlayer: Make location field clickable in File info window
The "Location" field in the File info window will be clickable if it
refers to a local file. This will open the containing folder in the Tracker.

Fixes #8842

Change-Id: I0b17587607275da12aac89a1716ec85652a31e29
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9796
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
2025-11-30 08:11:42 +00:00
Jérôme Duval c7c819c28f strace: send_signal and sigaction now use signal names
Change-Id: I5080da504899c96642bb4695eada2805fcffd773
Reviewed-on: https://review.haiku-os.org/c/haiku/+/10036
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-11-30 07:56:05 +00:00
Augustin Cavalier 49a702dd58 libroot/locale: Only set all locales if we checked the whole set.
If we only checked one, then of course we can't set LC_ALL,
as that will override ones we didn't verify were the same.

Seems this code has been wrong since it was first imported in 2010.

Fixes #19446.
2025-11-29 19:38:37 -05:00
Augustin Cavalier 1f58862893 app_server: Acquire the window lock in Set*Cursor.
SetScreenMode() and other methods around here also acquire it
in this way.

Adjust one place in ServerApp that would cause a lock-order-inversion
otherwise.

Should fix #19837.
2025-11-29 19:20:42 -05:00
Samuel Rodríguez Pérez 0ab44682c9 input mouse: Fix use default values for non available touchpad settings
+ license update

This fixes loading old versions of touchpad settings files by
providing default values for missing setting entries.

Change-Id: Ib655bcc439e28efc57388602e4aee35868a35028
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9906
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-11-29 19:36:51 +00:00
Samuel Rodríguez Pérez 5cc2a47ef1 input headers: Fix fingerWith documentation + license update
Add and fix description of the current values for fingerWith
field and related constants along with future expectations
for the same. The latest explainted as TODO item.

Change-Id: I876a9cf03a935309159401a6c88d9047bf225f90
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9863
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-29 19:36:51 +00:00
John Scipione 8df94f989a Appearance: Compose fake scroll bar height.
Change-Id: Ife4d1f6f73934ac23b3d81cb7a249d0579377464
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9896
Reviewed-by: John Scipione <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-29 19:36:01 +00:00
John Scipione 46386c023b HaikuControlLook: scroll bar thumb dots 2px wide
... instead of 1px so that they are more visible.

(as requested by CodeforEvolution in #9137)

Change-Id: I7419f0422b89f26ed9d2bb5e7510ff35561643a7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4333
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Jessica Hamilton <[email protected]>
Reviewed-by: John Scipione <[email protected]>
2025-11-29 19:36:01 +00:00
Autocomitter cc342ed852 Update translations from Pootle 2025-11-29 08:12:04 +00:00
Augustin Cavalier 39c7c29e69 net_server: Run DHCP negotiation on a separate thread to fix hangs.
Previously we ran DHCP negotiation on the looper thread. This meant
that we just blocked it for long periods of time, which stopped
configuration settings changes from working properly, and causing
the Network preferences panel to hang when net_server failed to
respond to its messages.

Now, we spawn a separate thread to do the real work on, and unlock
the looper around the recvfrom() with long timeouts. There's now a
kMsgAutoConfigureFailed that is sent when auto-configuration fails,
so that the AutoconfigLooper can fallback as before. Additionally,
the main NetServer class quits loopers for devices on any configuration
change, rather than deferring it unecessarily (and possibly wrongly, in
some cases.)

Fixes #18037. Probably fixes #17300 and may help with others.
2025-11-27 14:30:54 -05:00
Máximo Castañeda 2f598715f1 usb_disk: remove spaces at beginning of normalized name
Happens when the device has an empty vendor name.

Change-Id: Ib401749763a2e7ffe292feef41595f2dfae17d82
Reviewed-on: https://review.haiku-os.org/c/haiku/+/10028
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-27 09:17:05 +00:00
John Scipione fe86227a3f BPartition: Return B_BUSY when calling Mount()
... on an already mounted volume.

Change-Id: I7bffa385c6d1850db9106c3ab9a5a66e79165d11
Reviewed-on: https://review.haiku-os.org/c/haiku/+/10024
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-11-27 05:16:01 +00:00
John Scipione b5884b112e Tracker: Clear drag data on MouseUp().
The same is done at the top of MouseDown.

Fixes #19402.

Change-Id: I75fe2249a585612c859d80a7a71825b5cb1b1df8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/10026
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-27 04:10:53 +00:00
John Scipione 5388208c0b Tracker: Fix EditFirstWidget() pose location in icon mode.
The old code works because in icon-mode you have just one row
but this is not the intended way to determine the pose location
in icon mode (and mini-icon mode).

Refactor CommitActivePose() and kEditName in PoseView.

Use CurrentPoseList() to use filtered or regular pose list
(but don't update both).

In practical terms this should do nothing.

Change-Id: Iedafb147a6963bdb1411491be25641141325c1bf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/10025
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-27 04:10:53 +00:00
John Scipione a8deca6c41 fat: Do not prevent multiple simultaneous mounts.
This was preventing open() from getting the volume icon
once a FAT volume was mounted. This is now handled in the VFS.

Fixes #19303.

Change-Id: I5837bcdd4496b5eda13610e9ded661f1529364ea
Reviewed-on: https://review.haiku-os.org/c/haiku/+/10023
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-11-27 04:05:55 +00:00
Augustin Cavalier 9cbbc82087 kernel/fs: Block mounting partitions that are already mounted.
Previously this actually succeeded, which could obviously cause
disk corruption and other such problems.

While at it, clean up some code style.

Fixes #16734. Related to #19303.
2025-11-26 23:03:51 -05:00
Augustin Cavalier 5373300610 app_server: Remove window token first in ~ServerWindow.
This way, if the Desktop has locked its window list, RemoveWindow
will wait until the lock is released, at which time we're guaranteed
that the Desktop object will no longer be using this window.

May fix #19750 and related tickets.
2025-11-25 18:46:21 -05:00
Máximo Castañeda fed6a37b4f bootloader console: encode output
EFI wants UCS-2, BIOS uses CP437. Other systems untouched.

As a side effect, the high bits don't spill anymore into other fields.

Fixes: #18016
Change-Id: I704e8b8ab5e2c0d07ebbe033b3313245252ffd5d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9976
Reviewed-by: waddlesplash <[email protected]>
2025-11-25 20:20:32 +00:00
Samuel Rodríguez Pérez 7ae2e6756b input mouse: Handle B_BAD_DATA status code
The intended behaviour for this is when a kerned driver responds
with B_BAD_DATA status code is any data comming out should not be
taken into account and not trigger a device restart.
By providing this, device drivers have a way to communicate to
the user space something is not completely right comming out from
the hardware such as checksum issues, debounce packets that need
to be ignored, palm detention filters, partial processed information
requiring extra packets, detected incorrect data, partlially or
completelly uninitilised data, etc.

A potential workaround for device drivers is the usage of B_TIMED_OUT
which currently has part of the same code path but as the intention
for the naming it's not the same, there is no warranty that in the
near future the code path here will not diverge.

This fixes many misbehavious as per description above when drivers only
deal with B_OK or B_ERROR return codes. The first telling userspace
to process wrong data and the latter by issuing a device restart.

Change-Id: Ic57df649ba0972a60004db3d2b3aeebdeb65e133
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9905
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
2025-11-24 18:21:26 +00:00
Samuel Rodríguez Pérez 9c5da6de53 input mouse: Only save last valid processed movements
Only store the last valid touchpad movement checking status result.
Prevously, invalid data provided by drivers and wrongly processed by
userspace movement maker functionality such are uninitilised or other
kind of garbage data could end up being stored as legit resulting on
many unintended misbehaviours.

Change-Id: If5888341d53405810bc7295d4fffa1f00c9482fe
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9904
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
2025-11-24 18:21:26 +00:00
Samuel Rodríguez Pérez ceb063d041 input preflet: Fix tap slider limit values + license update
It was previously using spacing which seems to be a problem.
Spacing value is 11 which by the code will end up on 22 and
the default value is 20 making the tap slided to be very
close to the end with the old code and might be different
in case control looks or other external from the preflet UI
changes in the future.

To avoid that issue the limit has been put of a sensible value
of 50 and divided on 11 marks to visually be divided in chunks
of 10% sized regions.

Change-Id: Ief7461474f0f37eb6fa4bdea1ef8004a531328df
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9901
Reviewed-by: nephele nephele <[email protected]>
2025-11-24 18:20:39 +00:00
Jérôme Duval 7b2f4ab767 kernel/socket: for accept()/recvmsg() invalid user addresses are not fatal
needed to align with FreeBSD and Linux.
FreeBSD Test: tools/regression/sockets/accept_fd_leak/accept_fd_leak.c

Change-Id: Ia87e1713f0fb2a8010257539d2fe62cef9331c56
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9382
Reviewed-by: Jérôme Duval <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-24 08:35:48 +00:00
Autocomitter 124db2531a Update translations from Pootle 2025-11-23 22:02:14 +00:00
Jérôme Duval c548136748 strace: dump sigset_t, sigprocmask
Change-Id: Idbe11f05b5a254054b2d50091fefeaf43be8dd08
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9881
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
2025-11-23 14:02:58 +00:00
waddlesplash b5f59c2d1c Merge "Fix bootstrap build for arm and arm64" 2025-11-22 18:03:38 +00:00
PulkoMandy a6e9275281 Fix bootstrap build for arm and arm64
- Update texinfo to 7.2
- Update bash to 5.3
- Update ICU to 70.1

These versions are patched in haikuports.cross and allow cross compiling
from Debian sid with a modern GCC. Confirmed that both architectures can
build a filesystem, kernel and bootloader.
2025-11-22 17:08:33 +01:00
Autocomitter 9403e02eee Update translations from Pootle 2025-11-22 08:14:11 +00:00
Augustin Cavalier d39ce117e0 app_server: ServerMemoryAllocator takes the original area as the key.
Should fix memory leaks caused by fe8f88cff4.
2025-11-19 16:20:39 -05:00
SED4906 e7275c4d64 notification_server: Fix sound playback
Change-Id: I25e1a2aa24174d9d704615ce5f389db453f8736e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9893
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
2025-11-19 19:40:16 +00:00
François Revol f12a8a2c14 3rdparty: Add my old scripts to convert linux console keymap
I wrote that for the initial Bépo keymap.

Change-Id: Ib1d54a3326724741615fb5ead6fd5f98701ad782
2025-11-19 16:07:38 +01:00
Augustin Cavalier 1838903ee6 RosterPrivate: Define kMsgAppServerStarted as uint32 to appease GCC2. 2025-11-19 00:46:04 -05:00
Augustin Cavalier 49a92384f4 servers & kits: Rehabilitate app_server restart functionality.
* It's not really possible to distinguish between a first startup
   and a restart inside app_server itself. Due to the new BServer
   setup, the same port will still be used, too. So, change the
   messages sent to just "AppServerStarted".

 * Since the message is sent out much later than the port is created,
   by the time applications see it, the app_server may have already
   been started a while and applications may have connected to it.
   So, check if we really need to reconnect in BApplication before
   actually trying to do that.

 * BWindow now starts with updates disabled, so they must be
   enabled after reconnecting.

After this commit, basic app_server restart functionality works again;
it's restarted automatically by launch_daemon after dying or being killed
and applications automatically reconnect. However, some problems still
linger (e.g. Terminal doesn't always recreate its windows, colors
on the Desktop look wrong, missing desktop background image, etc.)
2025-11-18 22:26:31 -05:00
Augustin Cavalier fe8f88cff4 app_server: Rework ClonedAreaMemory to use ServerMemoryAllocator.
This takes advantage of the new reference (use)-counting logic
inside ServerMemoryAllocator to not re-clone areas needlessly.

Fixes #8501.
2025-11-18 20:10:05 -05:00
Augustin Cavalier 2661f371fb Debugger: Don't wait for threads or user in the CLI input loop.
It seems to be unecessary and just hangs the CLI most of the time
if there's no thread about to stop.

Makes Debugger --team <team> actually work instead of just
hanging.
2025-11-18 18:45:06 -05:00
Augustin Cavalier f4415c8657 tests: Rehabilitate bootloader test.
Now builds and starts again, at least.
2025-11-18 17:39:16 -05:00
Pascal Abresch 43f178372c LaunchBox: Live update panel color
Change-Id: Iba1bdcbbf9031c66b6b73f4c347d414566da13cf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9885
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-17 17:19:57 +00:00
PulkoMandy 2c34eec7ce sdci: enable command timeout interrupt
Otherwise, command timeouts are not correctly detected.

Change-Id: I8cc84a248952c716c30c90d21b33e19415928034
2025-11-17 16:25:34 +01:00
Humdinger addfaf046d Improved clarity of desktop/native packages filter labels
The new "Show" filter settings:

* Desktop and non-desktop packages
* Desktop packages
* Native desktop packages

differ from the other items in the menu, as these three new items act
as radio buttons: you can only choose one. To make this more obvious, add
"only" to the menu labels:

* Desktop and non-desktop packages
* Desktop packages only
* Native desktop packages only

Change-Id: I5daac7f76317e3390c243a7ea2d9f7637e40f918
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9882
Reviewed-by: nephele nephele <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-16 21:09:14 +00:00
Pascal Abresch f0e3b65d96 ColorControl: Fix font color
Change-Id: I17e9b7a89813684f3853bd07bdd6d27e6ce0c3e4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9888
Reviewed-by: John Scipione <[email protected]>
2025-11-16 21:05:53 +00:00
Pascal Abresch ac14f84c52 Appearance: Send only one color update message.
This will Batch the colors into one update, the app_server also
consolidates color updates, but does so based on timeframe. This will
prevent colors from beeing send in two different batches which may be
severall ms apart based on the batch timing

Change-Id: I9cdda57f07e1efb6ce685cd984a96ea95ae3190c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9094
Reviewed-by: waddlesplash <[email protected]>
Reviewed-by: John Scipione <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
2025-11-16 21:04:58 +00:00
Augustin Cavalier d640e20575 BeBuild.h: Add _DEPRECATED.
Change-Id: I983e89fa5324983f3721c50904d2a1d9b2014009
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9087
Reviewed-by: Adrien Destugues <[email protected]>
Reviewed-by: X512 X512 <[email protected]>
Reviewed-by: nephele nephele <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2025-11-16 16:37:38 +00:00
Jérôme Duval 139bf65f0d unix: handle MSG_PEEK on receive.
fix #18653

Change-Id: Ideaba943644481ffd6cf3e1801069508b7362c9a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9860
Reviewed-by: Jérôme Duval <[email protected]>
2025-11-15 22:30:45 +00:00
Jérôme Duval 431d197b7e kernel/fd: add inc_fd_open_count
Change-Id: I28a1b99a020cefb626dddca78cb7b7913cd1286c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9864
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-15 22:30:45 +00:00
Jérôme Duval 8dcdf257f9 network/stack: Add clone_ancillary_data.
Change-Id: I98a56344ffbf0c691a797ad7ce69ba1de08bbbee
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9859
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-15 22:30:45 +00:00
John Scipione 646294695d AboutSystem: Simplify updating colors.
Change-Id: Ide961bc25e6e84dcac41d6a2b62130e759762e8b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9773
Reviewed-by: nephele nephele <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-15 18:38:56 +00:00
Pascal Abresch afe2270c98 Bootloader: update copyright date
fixes #18992

Change-Id: Ifa673e40703b6f07d1a6008469f6a78e94b487fb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9880
Reviewed-by: waddlesplash <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2025-11-15 18:37:30 +00:00