Andreas Kling
fc3732759d
Documentation: Import an attempt at describing the project coding style.
2019-05-28 11:40:44 +02:00
Robin Burchell
335d0e52a4
Ports: Replace run_command use in bash with a run_replace_in_file helper
...
This way, we don't (in the ports themselves) depend on perl as a public
interface, which means if we ever have to, we can port to something else easier.
2019-05-28 11:03:18 +02:00
Robin Burchell
2b1a52745e
Ports: Remove MAKEOPTS hacks from bash
...
This doesn't seem to go wrong anymore.
2019-05-28 11:03:18 +02:00
Robin Burchell
9a284ad3f7
Move everything to a subdirectory
...
Also don't run cd for the initial git clone (DERP!), and other bash port fixes.
2019-05-28 03:07:18 +02:00
Robin Burchell
b12a096437
Add WIP bash port
2019-05-28 02:45:54 +02:00
Robin Burchell
19afcfe03c
port_include: Various updates
...
* Prints what is run, which is useful for trace purposes.
* Fix autotools configure to respect arguments
* Add run_patch for applying patches
2019-05-28 02:45:54 +02:00
Robin Burchell
5c82d14128
Add the start of a simple ports infrastructure
2019-05-28 00:21:14 +02:00
Robin Burchell
9947ee9566
Shell: Allow * and ? wildcard expansion in arguments
...
Should also presumably allow for escaping and such, but this is a start.
Fixes #112 .
2019-05-28 00:17:39 +02:00
Andreas Kling
4040c6137d
TextEditor: Fix window title when starting with an empty document.
2019-05-27 23:33:47 +02:00
Andreas Kling
ca4d65ba59
LibGUI: Add a GListView widget.
...
GListView displays a single column of data from a GModel.
2019-05-27 21:44:39 +02:00
Christopher Dumas
77185c1541
fixed ini WM config
2019-05-27 21:40:53 +02:00
Christopher Dumas
3e26faa226
removed extra impl of scaling
2019-05-27 21:40:53 +02:00
Christopher Dumas
da9c70598f
centered backgrounds are now an option
2019-05-27 21:40:53 +02:00
Christopher Dumas
aa50e5bb13
tiled backgrounds no longer has strange off-by-one pixel errors
2019-05-27 21:40:53 +02:00
Christopher Dumas
c23882dde1
can now tile background and made sure the IRC choose server popup still works
2019-05-27 21:40:53 +02:00
Christopher Dumas
50154a23cb
most apps now begin in the correct directory
2019-05-27 21:40:53 +02:00
Christopher Dumas
e3f81bce49
IRC client setttings, Terminal settings, more WM settings
2019-05-27 21:40:53 +02:00
Christopher Dumas
63486b8438
implemented settings for window manager.
2019-05-27 21:40:53 +02:00
Christopher Dumas
d4a16d6031
Network stack is now configurable, and resolution is also configurable, but loading cursors causes a page-fault?
2019-05-27 21:40:53 +02:00
Robin Burchell
9d2b08e06e
LibCore: Add CDirIterator, and use it in everything rather than readdir
2019-05-27 15:27:23 +02:00
Andreas Kling
f352a5094d
ls: Fix build and tidy up coding style.
2019-05-27 15:04:23 +02:00
faissaloo
f28cc2e2e0
Ls: Cleanup
2019-05-27 14:53:16 +02:00
faissaloo
4c410f3de6
Ls: Support multiple files
2019-05-27 14:53:16 +02:00
faissaloo
776a359a17
Ls: Support single files in long mode
2019-05-27 14:53:16 +02:00
faissaloo
fee686e2cd
Ls: Refactor long directory listings
2019-05-27 14:53:16 +02:00
faissaloo
07c356ce64
Ls: Add single file support in short mode
2019-05-27 14:53:16 +02:00
Andreas Kling
b311257098
Applications: Let's put spaces in app names
...
"FileManager" => "File Manager"
"FontEditor" => "Font Editor"
"ProcessManager" => "Process Manager"
"TextEditor" => "Text Editor"
2019-05-27 13:52:28 +02:00
Andreas Kling
12120167a9
AK: Add ensure_capacity() for HashMap and HashTable.
...
These functions make sure that the underlying table can accomodate at least
'capacity' entries before needing a rehash.
2019-05-27 13:07:20 +02:00
Andreas Kling
4fb2e5d8af
SharedGraphics: Make Rect::shatter() return a Vector<Rect, 4>.
...
We know that shatter() will never return more than four rects, so we can
use vector inline capacity to always avoid heap allocation here.
2019-05-27 12:50:18 +02:00
Andreas Kling
3873c51781
LibCore: Add CObject::for_each_child_of_type<T>()
...
Use this to iterate over all the GRadioButtons in a group.
2019-05-27 04:18:24 +02:00
Andreas Kling
0c85d3dba9
LibCore+LibGUI: Add is<T>(CObject&) and to<T>(CObject&) helpers.
2019-05-27 04:06:01 +02:00
Andreas Kling
723ba91f74
LibGUI: Add GWidget::for_each_child_widget(callback).
2019-05-27 03:52:33 +02:00
Andreas Kling
906fde8f8c
LibCore: Add CObject::for_each_child(callback).
2019-05-27 03:52:19 +02:00
Andreas Kling
3654c33c56
GFilePicker: Add a preview pane on the right-hand side for image previews.
...
Currently the preview pane is always open, but maybe it should be something
you can configure, or something that happens automagically.
2019-05-27 01:55:04 +02:00
Andreas Kling
5ba2dba392
FileSystemPath: Add a has_extension() helper.
...
This code:
if (path.string().to_lowercase().ends_with(".foo"))
Can now be written as:
if (path.has_extension(".foo"))
2019-05-27 01:53:42 +02:00
faissaloo
6ac8aab941
GFilePicker: Return paths as FileSystemPath rather than String
2019-05-26 22:52:09 +02:00
Robin Burchell
9b86eb9fad
WSCompositor: Allow a compose to bypass the timer when it first happens
...
d66fa60fcf
introduced the use of a timer
to coalesce screen updates. This is OK, but it does introduce update
latency.
To help mitigate the impact of this, we now have a second (immediate)
timer. When a compose pass is first triggered, the immediate timer will
allow the compose to happen on the next spin of the event loop (so, only
coalescing updates across a single event loop pass). Any updates that
trigger while the delayed timer is running, though, will be delayed to
that (~60fps) timer.
This fixes #103 .
2019-05-26 18:22:33 +02:00
Robin Burchell
8df3e2516f
CEventLoop: Make it possible to determine running/quit state without using exec()
...
... by removing a redundant member that nothing uses (running), and
exposing whether or not quit has been requested.
2019-05-26 18:17:40 +02:00
Andreas Kling
bb288c1baf
IDEDiskDevice: Implement basic DMA writes.
...
This could share more code with reads, and generally be better. But it works
and it's considerably faster than PIO, so let's use it. :^)
2019-05-26 14:58:21 +02:00
Andreas Kling
dd595fe865
Shell: A '>' redirection target should be truncated.
2019-05-26 14:57:12 +02:00
Robin Burchell
d66fa60fcf
WSCompositor: Use a timer to schedule compose rather than an event
...
Really poor man's vsync. Still not actual vsync, but at least we won't
constantly spin buffers if we get many dirty rects.
2019-05-26 04:10:05 +02:00
Faissal Bensefia
411cdf067b
AK: Implement String::to_int ( #99 )
2019-05-26 04:08:36 +02:00
Robin Burchell
79dba9a545
WSEventLoop: Don't assert when being told to construct a crazy window type
...
Seriously non-cool :(
2019-05-26 03:41:53 +02:00
Robin Burchell
9b2fb47136
GTextEditor: Take frame size into account when setting clip rect
...
The ruler right does not include the (already translated) frame size.
Take that into account too, otherwise we overdraw the ruler.
Fixes #23 .
2019-05-26 02:46:26 +02:00
Andreas Kling
9308ce071f
Userland: Add a helpful little program for provoking different crashes.
...
Currently supported crash types:
-s : Segmentation violation
-d : Division by zero
-i : Illegal instruction
-a : Abort
2019-05-26 02:35:25 +02:00
Andreas Kling
cde3274ffb
LibC: Implement abort() as raise(SIGABRT).
2019-05-26 02:35:25 +02:00
Andreas Kling
0cac84d6bd
Kernel: Sending a signal to yourself should block until dispatch.
...
By moving the sending (and receiving) thread into the BlockedSignal state,
we ensure that the thread doesn't continue executing until the signal
has been dispatched.
2019-05-26 02:35:25 +02:00
Andreas Kling
6ffcee9176
Kernel: Send more specific signals when crashing due to CPU exceptions.
...
- For division by zero, send SIGFPE.
- For illegal instruction, send SIGILL.
- For the rest, default to SIGSEGV.
2019-05-26 02:35:25 +02:00
Andreas Kling
0fa098845f
Shell: When a command is terminated by a signal, print signal description.
...
Previously we were only printing the signal number (except for SIGINT.)
2019-05-26 02:35:25 +02:00
Andreas Kling
7c37ffd9d8
LibC: Let the string for SIGFPE be "Division by zero".
...
That's really what we send this signal for, so let's call it that.
2019-05-26 02:35:25 +02:00