Andreas Kling
29aa8373d4
LibC: Add localtime_r()
2020-02-11 19:36:59 +01:00
Andreas Kling
57e4410044
Revert "LibC: Remove isfoo() declarations from ctype.h"
...
This reverts commit 2ba06662b6
.
This broke the toolchain build. Apparently libstdc++v3 depends on the
declarations of isfoo() helpers.
2020-02-11 19:36:47 +01:00
Andreas Kling
0e44fb8731
WebServer: Add copyright headers
2020-02-11 19:25:06 +01:00
Andreas Kling
193d7c5b19
WindowServer: Make some WindowSwitcher members private
2020-02-11 18:56:31 +01:00
Andreas Kling
cfa6e44131
WindowServer: Remove unused WindowManager::draw_window_switcher()
2020-02-11 18:55:16 +01:00
Andreas Kling
0f00e9a1c7
WindowServer: Draw a coolbar border around the hovered switcher item
...
This gives a small but nice indication that the switcher window list
items are clickable. :^)
2020-02-11 18:53:56 +01:00
Andreas Kling
4c620dea83
WindowServer: Update window switcher when moving window to front
...
If the window switcher is up when a window is made frontmost (usually
by clicking on it), the window will now become the selected window in
the switcher.
This still has a slight feeling of "hmm" but is definitely better than
what we had before.
2020-02-11 18:38:48 +01:00
Andreas Kling
ba135dc0c0
WindowServer: Allow clicking on windows in the window switcher
...
You can now switch between windows using your mouse to click them in
the window switcher. :^)
2020-02-11 18:28:45 +01:00
Andreas Kling
2ba06662b6
LibC: Remove isfoo() declarations from ctype.h
...
We'll keep the definitions in ctype.cpp so you can link against them
but there's no reason to have competing declarations and macros.
2020-02-11 17:41:16 +01:00
Andreas Kling
92e2afe584
LibGUI: Tweak C++ syntax highlighting colors a bit :^)
2020-02-11 13:07:21 +01:00
Andreas Kling
a1e7064937
gron: Use pledge()
2020-02-11 12:42:06 +01:00
Andreas Kling
05e772d276
jp: Use pledge()
2020-02-11 12:16:07 +01:00
Andreas Kling
9a09437c46
LibGUI: Splitter should forget resize candidates after cursor leaves
...
Otherwise we'll keep highlighting the grabbable rect even after the
cursor has left the splitter widget.
2020-02-11 11:53:38 +01:00
Andreas Kling
6ecf90c6f8
SystemMonitor: Tweak bottom margin of the process table
2020-02-11 11:53:38 +01:00
Andreas Kling
8a605922bb
LibGUI: Make splitters 1px wider as 3px is slightly too narrow
2020-02-11 11:53:38 +01:00
Andreas Kling
1fc887c576
LibGUI: Only highlight grabbable area between a Splitter's children
...
We were previously cheating by setting the entire splitter's background
color to the hover highlight color. This looked goofy whenever there
were transparent widgets inside a splitter, since the highlighted color
would shine through when hovering.
This was especially noticeable in SystemMonitor, which now looks much
better. :^)
2020-02-11 11:53:38 +01:00
Andreas Kling
3f58f0e87c
LibGfx: Add Rect::operator!=(Rect)
2020-02-11 11:53:38 +01:00
Andreas Kling
f4fa758959
LibGUI: Add a Widget::did_layout() that gets called after layout
...
This will allow widgets to implement post-layout behaviors.
2020-02-11 11:53:38 +01:00
Andreas Kling
7aa62665a3
LibGUI: Factor out Splitter hit testing into a separate function
2020-02-11 11:53:38 +01:00
Shannon Booth
01cefa83aa
WindowServer: Ensure on a menu key press invalid items are not hovered
...
Whenever a new menu item is hovered through a up or down key press, we
should always end up hovering a valid item.
2020-02-11 11:00:09 +01:00
Shannon Booth
7b6d450b6a
LibGfx: Assert that an empty bitmap is not created
2020-02-11 11:00:09 +01:00
Shannon Booth
cef3988e30
WindowServer: Assert that a window is not being set as empty
2020-02-11 11:00:09 +01:00
Shannon Booth
96bfbfca9b
WindowServer: Remove unimplemented header function
2020-02-11 11:00:09 +01:00
Shannon Booth
97508844dc
WindowServer: Use early return to reduce nesting
2020-02-11 11:00:09 +01:00
Andreas Kling
14f9a29502
Terminal: Set up a nice $PROMPT for the shell :^)
2020-02-10 21:53:04 +01:00
Andreas Kling
8262c1e662
Shell: Build prompt based on the PROMPT environment variable if present
2020-02-10 21:52:58 +01:00
Andreas Kling
1828d9eadd
Kernel: Remove some commented-out code in Scheduler::yield()
2020-02-10 20:16:50 +01:00
Andreas Kling
7cf33a8ccb
Kernel: Remove outdated FIXME from Scheduler
2020-02-10 20:15:53 +01:00
Andreas Kling
27f0102bbe
Kernel: Add getter and setter for the X86 CR3 register
...
This gets rid of a bunch of inline assembly.
2020-02-10 20:00:32 +01:00
Andreas Kling
7323d085dd
LibGUI: Single-line GUI::TextEditor should not have "go to line" action
2020-02-10 19:49:49 +01:00
Andreas Kling
580a94bc44
Kernel+LibC: Merge sys$stat() and sys$lstat()
...
There is now only one sys$stat() instead of two separate syscalls.
2020-02-10 19:49:49 +01:00
ignas-sa
b67035c3ac
Calculator: Accept more keyboard input ( #1207 )
...
Allow user to clear/remove last numeral from input (Esc/Backspace
respectively) and type the decimal point.
2020-02-10 19:48:52 +01:00
asliturk
077ef556a7
WindowServer: Move applet code from MenuManager to AppletManager.
...
Move applet logic to the own class. Remove applet code from MenuManager.
With new AppletManager applet order is configurable via WindowManager.ini file.
2020-02-10 18:33:28 +01:00
=
e5e162fe5a
Audio.MenuApplet: Add window title.
2020-02-10 18:33:28 +01:00
=
aadcc9c34e
CPUGraph.MenuApplet: Add window title.
2020-02-10 18:33:28 +01:00
=
afb37b66cc
Clock.MenuApplet: Add window title.
2020-02-10 18:33:28 +01:00
=
fcee5075e9
UserName.MenuApplet: Add window title.
2020-02-10 18:33:28 +01:00
Andreas Kling
3713d31750
LibCore: TCP and UDP servers should parent Notifiers to themselves
...
This makes things look a little more neat in Inspector. :^)
2020-02-10 14:15:56 +01:00
William McPherson
aa149b9330
LibAudio/Piano: Replace floats with doubles
...
We should default to double-precision so that clients can make the
choice to use float or double.
2020-02-10 14:04:27 +01:00
William McPherson
d55d2b2794
LibAudio/aplay: Handle WAV header errors properly
...
We shouldn't just ASSERT() if the header parse fails. This was crashing
Piano completely.
2020-02-10 14:04:27 +01:00
William McPherson
4ad96df0d4
Piano: Draw stereo waves
...
Draw two waves in different colors.
2020-02-10 14:04:27 +01:00
William McPherson
93903c8064
Piano: Try to be more stereo-oriented
2020-02-10 14:04:27 +01:00
William McPherson
255edcb525
Piano: Add nice scale factor to WaveWidget
2020-02-10 14:04:27 +01:00
William McPherson
2a66878148
Piano: Ensure WaveWidget paints in-bounds
...
Letting GUI::Frame::paint_event() cover up your mistakes is tacky :P
2020-02-10 14:04:27 +01:00
William McPherson
60fdc6c9ab
Piano: Put reset() with other setters
2020-02-10 14:04:27 +01:00
William McPherson
9997b0dbf5
Piano: Add sampler
...
This commit adds basic support for importing, viewing and playing WAV
samples at different pitches.
Naming issues:
- We are using the Sample struct from Music.h, but also the Sample
struct from LibAudio (Audio::Sample). This is a little confusing.
set_recorded_sample() finds the peak sample and then divides all the
samples by that peak to get a guaranteed min/max of -1/1. This is nice
because our other waves are also bound between these values and we can
just do the same stuff. This is why we're using Audio::Sample, because
it uses floats, whereas Music.h's Sample uses i16s. It's a little
annoying that we have to use a mixture of floats and doubles though.
For playback at lower frequencies, we're calculating in-between samples,
rather than just playing samples multiple times. Basically, you get the
current sample and add the difference between the current sample and the
next sample multiplied by the distance from the current sample. This is
like drawing the hypotenuse of a right-angled triangle.
2020-02-10 14:04:27 +01:00
Jesse Buhagiar
591870c7b4
Ports: Disable JACK for SDL2 in configopts
...
This is causing build errors for myself and a few other people.
This config option disables the SDL2 port from trying to compile
with the JACK audio server (which we don't need).
2020-02-10 13:10:51 +01:00
Andreas Kling
ccfee3e573
Kernel: Remove more <LibBareMetal/Output/kstdio.h> includes
2020-02-10 12:07:48 +01:00
Andreas Kling
6cbd72f54f
AK: Remove bitrotted Traits::dump() mechanism
...
This was only used by HashTable::dump() which I used when doing the
first HashTable implementation. Removing this allows us to also remove
most includes of <AK/kstdio.h>.
2020-02-10 11:55:34 +01:00
William McPherson
c8eaae3eaf
Userland: Fix segfault in chown
...
chown takes 2 arguments, not 1.
2020-02-10 11:11:29 +01:00