Commit Graph

61408 Commits

Author SHA1 Message Date
Augustin Cavalier
dd419e59dc build_haiku_image: Distinguish between system (activated) and unactivated packages.
Previously, all packages on the image, both activated and unactivated,
were in $systemPackages, so if a package actually in /system/packages
had a dependency in the Installer optional package area, the dependency
checking would see no problem but the generated image would be broken.

Now, packages going into /system/packages are treated separately
from those going elsewhere, and error checks added so the above
condition will not occur.

(I ran into this while working on the build-package upgrade
in the following commits.)
2020-04-19 17:53:10 -04:00
Augustin Cavalier
5e15819d86 Jamfile: Remove most implicit dependencies from default installed packages.
No need to pull in e.g. "libpng16" explicitly when the appropriate
libpng version will automatically get selected by get_package_dependencies
at image build time.

I did however remove ctags altogether; nothing in the base install
uses it, so there's no reason to have it.
2020-04-19 17:50:43 -04:00
Adrien Destugues
c2895bebdf Build fix. 2020-04-19 17:00:02 +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
217641f5fe intel_extreme: do not pretend to handle modern devices
The accelerant just doesn't know what to do with these.
2020-04-19 09:39:04 +02:00
Andrew Lindesay
a6a45d1b92 HaikuDepot: Fix Oscillating Pkg Selection
The views for prominent and list packages were both
getting mouse click events and they were both sending
the "package changed" to the MainWindow which, with
the two queued messages, ended up in a feedback loop
constantly oscillating between the two packages from
the two views.  This problem is resolved in this
commit by stopping one of the views processing the
events if it is hidden -- because it is not the
selected tab.

Resolves #15884

Change-Id: I38f75baba26b26183fd0cd1a6909e404f9f37b9b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2498
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-19 03:52:50 +00:00
Augustin Cavalier
a2dbd0457f hardlink_packages: Use distutils to compare versions. 2020-04-18 18:04:38 -04:00
waddlesplash
47e83a42b0 Revert "BTabView: use the back/forward buttons to switch tabs"
This reverts commit 7ba52abdd3.

Reason for revert: Broke the build due to undeclared symbols.

Change-Id: If726d1f71a336f98428037dad2acfdaf961f1a84
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2497
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:40:02 +00: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 <waddlesplash@gmail.com>
2020-04-18 18:25:19 +00:00
Niels Sascha Reedijk
6758018a21 HaikuBook: add remaining layout class documentation
This is the final contribution to #15368

* Tried to share more documentation in the various BLayoutBuilder classes
* Add missing GridView, GroupView, SpaceLayoutItem
* Also added AbstractLayoutItem, but hide the actual documentation behind
  an `INTERNAL` conditional block. This block identifier can be used to
  document parts of the API, to then hide them during a regular Doxygen run.
* Do some cleanup on other layout classes; add missing members, etc.
* The actual generated BLayoutBuilder::* html is a mess. I should investigate
  this at a later time. Especially the copied members seem to mix type
  definitions with member documentation. It is odd. Not unlikely to be a
  Doxygen bug.
* The general documentation for the layout system could use an overhaul as
  well, but this is for later.

Change-Id: I6db9ef105b4ae6de0f1ebb917f86f8b1c0d4ea2e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2491
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:24:51 +00:00
waddlesplash
891edac940 kernel/vm: Revise overflow checking in user_strlcpy.
Change-Id: I6a066e7b2c51ff94d80381fcc940565f777209e7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2376
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:22:49 +00:00
Kyle Ambroff-Kao
ee8cf35f07 bfs: Return B_NAME_TOO_LONG from BPlusTree::Find
This patch makes "UnitTester BNode" pass.

Several tests which attempt to create or access a directory entry that
exceeds the maximum length assume that B_NAME_TOO_LONG status will be
returned, since that is what BeOS does. When constructing a BNode with
a path like "/tmp/some really long filename larger than 256
characters...", the vfs eventually calls bfs_lookup() which calls
BPlusTree::Find(). In the case of a really long entry, Find() returns
B_BAD_VALUE.

This patch just changes BPlusTree::Find to return the more specific
error that matches BeOS.

Additionally this patch fixes some assertions in NodeTest. BeOS seems
to have been missing some error checking code in the initialization of
BNode, specifically with BNode(Directory*, const char*) and the
equivalent SetTo method. If you provide an empty string for the child
entry name to either of those, B_OK will be returned. But either way
you initialize the object, when you try to use it, like with
BNode::GetAttrInfo(), you'll get B_BAD_VALUE.

This just changes any assertions for this situation to expect
B_ENTRY_NOT_FOUND, which is the actual initialization error Haiku
sets.

This and the change to bfs resolves many assertions the following
storage tests:
* TestCaller BFile::Init Test 1
* TestCaller BFile::Init Test 2
* TestCaller BNode::Init Test1
* TestCaller BNode::Init Test2
* TestCaller BSymLink::Init Test 1
* TestCaller BSymLink::Init Test 2

Change-Id: I8598352aa341ffcab9f7bc3e6740ae1cb3dbab8c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2490
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:22:04 +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 <waddlesplash@gmail.com>
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 <waddlesplash@gmail.com>
2020-04-18 18:20:37 +00:00
Preetpal Kaur
6ae1da352b Fix Bug: Remove Wacom device from Devicelist
I make some changes in the wacom input server to solve the bug mentioned above. I don't have wacom and unable to buy it duw to COVID-19.
Can anyone please test the code.

Change-Id: I27a7353cafd495f89d7ba7f8a6f4fa7e8abc86e1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2448
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:18:39 +00:00
Andrew Lindesay
296183eb6f HaikuDepot: UI Colouring Fix
Some text displayed was not using the system
standard colors.

Resolves #11689

Change-Id: Ia415a32f47dff6aa86d343d1acc154527300e924
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2493
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:17:05 +00:00
Niels Sascha Reedijk
ff8a1e374c Remove obsolete catalogs 2020-04-18 10:34:48 +01:00
Autocomitter
04d1d2da0b Update translations from Pootle 2020-04-18 09:03:25 +00:00
X512
898afd0a20 i2c: add device names
Change-Id: I1cb40223cdb43cc7069aee382657aac2b4cfd62b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2481
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-16 11:52:47 +00:00
X512
e3b7218370 pch_i2c: implement acpi_scan_bus
Change-Id: Ib2297246ea53c9e65d602961b615c2e1f4b3478a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2480
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-16 11:52:47 +00:00
X512
47102c0742 Interface Kit: introduce B_TRANSPARENT_BACKGROUND flag
BeOS didn't support transparent views. As documented in the Be Book,
SetViewColor(B_TRANSPARENT_COLOR) only effect is to not fill the
invalidated areas with the view color before calling Draw() (it avoids
flickering, especially when combined with B_FULL_UPDATE_ON_RESIZE).

A previous change made B_TRANSPARENT_COLOR actually make the view
transparent (that is, additionally to the above, the underlying view is
drawn before the transparent children), but it creates compatibility
issues.

In order to keep the API compatible with BeOS, the new behavior is now
enabled explicitly using the B_TRANSPARENT_VIEW flag. This also opens
for future developments like allowing a view color with an alpha
channel (not supported yet).

Adjust programs that require transparent views.

Fixes #15744, #15745.
Helps with #15645.

Change-Id: I529574ea23db0a23579521b263bc8d572775e35a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2275
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-16 00:59:37 +00:00
X512
23177782fd RAWTranslator: fix integer overflow
Pointed by clang.

Change-Id: I6e2c62ccfa7bec381a02b08d54c7469bbb8d7a67
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2406
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-16 00:58:41 +00:00
Andrew Lindesay
ccf707d0bb HaikuDepot: Fixes for Tabs
Cleans up the code around tab-switching and
also improves some logic around inserting
packages into the list of 'prominent'
packages by using a binary search.

If Haiku is installed into an environment with no
networking then it won't be able to talk to HDS
and so won't know which packages are promoted.
In this case switch the user to the "all packages"
tab so they are not shown a blank panel by default.

Relates to #14675, #14927

Change-Id: I14dd3be4af09a98245ddd0a9704bd8d53ed64a53
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2478
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-16 00:58:30 +00:00
Andrew Lindesay
10cd325cfa HaikuDepot: Check User Auth on Start
The user might have changed their authentication details
on the server and the client won't detect this until
they go to do something.  Instead, if possible, check
this as the client starts.  Also check that the user has
agreed to the current user usage conditions.

As a side-effect this generalizes the logic for process
coordination in the main window and also fixes some bugs
in the main window's progress display as the application
starts.

Relates to #15209

Change-Id: I4c9620648819ecd14fb095e4cb2c66fe7b2a0920
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2467
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-15 07:10:10 +00:00
Niels Sascha Reedijk
5cfca119fb HaikuBook: Add documentation for BCardLayout
This adds documentation for BCardView, BCardLayout and BLayoutBuilder::Cards.
There is also a bit of cleanup for the BSplitView documentation.

It also makes explicit when a developer passes an invalid argument to
BCardLayout::SetVisibleItem(), by making that a debugger() call.

Change-Id: I17ac52cc773bb76c4f81beaa76f72af62a9e10f4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2460
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-14 08:00:13 +00:00
SuhelMehta9
a7725a42a9 ufs2: Add superblock, volume, identify() and mount()
Change-Id: I27a492145fe1a365ceea6d172e332167513f5c3b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2381
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-14 07:49:54 +00:00
SuhelMehta9
42ddb0b34b Making of UFS file system
System dependencies and kernel interface code has been added.

Change-Id: I770ad6b906ca41d4d84d374cea209e22149fd727
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2344
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-14 07:49:54 +00:00
Niels Sascha Reedijk
4da0550b05 FirstBootPrompt: build fix for gcc 2 after applying change 1718 2020-04-13 20:15:36 +01:00
Murai Takashi
c3fcf05777 Firstbootprompt: Localize keymap list
Fixes #15522

Change-Id: I8909f70c0f7abe1fa23ea7c145220b95a3e06395
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1718
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
2020-04-13 15:49:26 +00:00
Niels Sascha Reedijk
4b918abdb0 Package Kit: internationalize strings that may be displayed to the user
This fixes #14525.

Change-Id: I25810a4e12caed7aa47717e278591b1716b6198c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2329
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
2020-04-13 09:00:10 +00:00
Augustin Cavalier
8e3ce627f2 libroot: Remove rpmalloc.
It seems clear that the architectural designs of rpmalloc are
just not suited for us in the "corner-cases", and probably never
will be.

After R1/beta2, I'll investigate switching us to musl's mallocng,
which is explicitly designed as a system allocator and has much
lower overall memory usage than even glibc's default allocator.
2020-04-12 18:08:41 -04:00
Augustin Cavalier
4ba0a2f80c Deskbar: Enable "Tracker always first" by default.
This received 84% on the forums, so it seems pretty uncontroversial
to enable it by default.

No other option received 70% or more, so I'll leave Humdinger to
decide what the other changes to the defaults should be based
on whatever threshold is decided upon...
2020-04-12 18:06:11 -04:00
Augustin Cavalier
ffee10ada1 StyledEdit: Fix build after previous changes. 2020-04-12 17:24:03 -04: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 <waddlesplash@gmail.com>
2020-04-12 21:09:30 +00:00
Pascal Abresch
7bc364740d Stylededit: update rdef
Change-Id: I39a2983518b24713f8f1f79e6b4b3d942b7b894c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2304
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-12 21:07:43 +00:00
Pascal Abresch
619b2670b1 StyledEdit: Add cmd +, cmd - shortcuts for font size
Change-Id: I540ed130322fa1ce7eba62c4a1d1de36b12ccf9a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2303
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-12 21:07:19 +00:00
Alexander von Gluck IV
19733b44fa kits/bluetooth: Style cleanup, add additional vendors
Change-Id: I33ac709fe1dc759bf9b98fe94bd1820278ef33d4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2471
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-12 19:41:57 +00:00
Jérôme Duval
01990a00e8 i2c: add acquire_bus/release_bus hooks
Change-Id: I9f55bb824f264175ae5830a2853a1897e3a00139
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2470
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-12 16:55:52 +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
Augustin Cavalier
be4c5346eb Update usb.ids. 2020-04-11 22:17:49 -04:00
Augustin Cavalier
18d0902fd2 Update pci.ids. 2020-04-11 22:17:46 -04:00
John Scipione
1482b250a7 IK: Update scroll bars for alternative control look
Scroll bars should look and work identically to before on
HaikuControlLook.

Add DrawScrollBarButton() and DrawScrollBarThumb() and
DrawScrollBarBorder() methods. These methods are used to draw scroll
bars in a generic way so that they can be drawn differently by alternative
control look's (e.g. BeControlLook). Also it gives us back drawing of
scroll bar knobs.  However the knob setting is not exposed in the
interface in this commit.

These methods are in addition to the 2 existing DrawScrollBarBackground()
methods that draw the scroll bar background. One draws the area above and
below the thumb and the other is called by the first to actually draw the
area.

The rest of the drawing besides the backgrounds was being done in
BScrollBar before. To draw the scroll bar arrows and thumb we were recyling
other ControlLook methods, while this worked well enough on HaikuControlLook
it wasn't flexible enough for alternative control looks.

DrawScrollBarButton() is used to draw the four scroll buttons and is
typically (so far) used in combination with DrawArrowShape().

DrawScrollBarThumb() draws the scroll bar thumb.

DrawScrollBarBorder() draws a 1px border around the entire scroll bar,
potentially B_KEYBOARD_NAVIGATION_COLOR if focused (although this is
feature not currently used.)

Draw unscrollable scroll bars as if they were disabled including the
buttons with their arrow shapes, background, and thumb.

Add FBC backwords compatibility macros in ControlLook.cpp

Change-Id: I9237c5ce45d17d674785111d51de951e5686306b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/351
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-11 16:57:54 +00:00
X512
67597f4204 Interface kit: fix regression introduced in hrev53944
In hrev53944 selection is cleared if text view lose focus, but it
don't work properly in StyledEdit, causing clearing selection when
menu is opened. Clear selection on lose focus is needed for text controls,
so when you click on another text control, previosly focused text
control should clear selection. This behavior is working in BeOS, so
some investigation is required.

Fixes #15810.

Change-Id: Ie104fc1d7e76c2cd2b97d3a0462856fe70cccbbf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2355
Reviewed-by: Stefano Ceccherini <stefano.ceccherini@gmail.com>
2020-04-11 16:55:53 +00:00
Jérôme Duval
1e1ea67e73 pch_i2c: add a few more ACPI HID for older chipsets
they should be compatible for I2C I/O

Change-Id: Ifc2bed29813403ef845ca60c9cc22187e2cacc88
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2469
Reviewed-by: X512 <danger_mail@list.ru>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-11 16:52:15 +00:00
Autocomitter
d82800d2db Update translations from Pootle 2020-04-11 08:59:25 +00:00
Jérôme Duval
fedaf76622 HttpRequest: fix gcc2 build after f4fce2fd2e 2020-04-10 13:50:55 +02:00
Jérôme Duval
757499353a kernel: add data_acquisition mapping for input devices
busses/i2c needs to be probed also for acpi devices

Change-Id: Ib75b6e8db27361e395560d069dcbf136571b7a8e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2463
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-10 11:25:39 +00:00
Jérôme Duval
1e0d4ffa2e usb_hid: fix trace build, use a macro for device path suffix
no functional change

Change-Id: If8a147727214c8d40853058c033d241c284eec84
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2462
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-10 11:25:39 +00:00
Jérôme Duval
ee87ae146f i2c: add diagnostic utility
Change-Id: I7e87457ff6e4210e256f9e41e5555e2d0e1ba20d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2459
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-10 11:25:39 +00:00
Jérôme Duval
e4402bc32f pch_i2c: i2c bus driver for Intel PCH (Skylake+)
acpi initial support

Change-Id: Id48b1211356e47b7dec4c74ad49eeb7bd704bc67
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2458
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-10 11:25:39 +00:00