Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								ef4e9860fd 
								
							 
						 
						
							
							
								
								WindowServer: Convert the remaining menu APIs into messages.  
							
							
							
						 
						
							2019-02-13 21:47:14 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								cf432b4c3d 
								
							 
						 
						
							
							
								
								WindowServer: Refactor more of the menu APIs to be message-based.  
							
							... 
							
							
							
							This is all pretty verbose but I can whittle it down later. :^) 
							
						 
						
							2019-02-13 18:49:23 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								fbbf57b61c 
								
							 
						 
						
							
							
								
								Rename GUI_Event to GUI_ServerMessage.  
							
							... 
							
							
							
							Now that communication is becoming bidirectional, "event" is no longer right. 
							
						 
						
							2019-02-13 17:59:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								4f98a35beb 
								
							 
						 
						
							
							
								
								WindowServer: Begin refactoring towards a fully asynchronous protocol.  
							
							... 
							
							
							
							In order to move the WindowServer to userspace, I have to eliminate its
dependence on system call facilities. The communication channel with each
client needs to be message-based in both directions. 
							
						 
						
							2019-02-13 17:54:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								c5a00a56c8 
								
							 
						 
						
							
							
								
								WindowServer: Put a clock in the top right corner of the screen.  
							
							... 
							
							
							
							This way we don't even need the Clock app anymore. Very cool :^) 
							
						 
						
							2019-02-13 09:27:08 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								961783e0df 
								
							 
						 
						
							
							
								
								Let's have makeall.sh build with make -j2.  
							
							... 
							
							
							
							The full rebuild keeps getting slower, this makes it a bit more bearable. 
							
						 
						
							2019-02-12 16:34:19 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								d74b131c27 
								
							 
						 
						
							
							
								
								Add a little About app and hook it up to the system menu's "About..." entry.  
							
							... 
							
							
							
							Added icons and customizable text alignment to GLabel. 
							
						 
						
							2019-02-12 15:23:07 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								7ce15f1c54 
								
							 
						 
						
							
							
								
								Fix some compilation warnings.  
							
							
							
						 
						
							2019-02-12 12:11:22 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								f3c8821b0f 
								
							 
						 
						
							
							
								
								Bootloader: Bump sector count once again.  
							
							... 
							
							
							
							This is starting to get cramped. I wonder how much longer this hilarious
frankenloader will be able to boot us. 
							
						 
						
							2019-02-12 12:09:50 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								111589a558 
								
							 
						 
						
							
							
								
								Kernel: Make sure processes always start out with fds 0, 1 and 2 open.  
							
							... 
							
							
							
							If we don't have a TTY for the process, fall back to /dev/null. 
							
						 
						
							2019-02-12 11:25:25 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								4b8133e925 
								
							 
						 
						
							
							
								
								WindowServer: Clean up any menu objects on process exit.  
							
							... 
							
							
							
							..and now that this works, implement the Quit menu action in Terminal. :^) 
							
						 
						
							2019-02-12 10:41:09 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								f311d0f353 
								
							 
						 
						
							
							
								
								Kernel: Don't bother trying to pass environment to init's testing processes.  
							
							
							
						 
						
							2019-02-12 10:19:52 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								db98327bdc 
								
							 
						 
						
							
							
								
								Plumb menu item activation events from WindowServer to clients.  
							
							... 
							
							
							
							GMenu now has an "on_item_activation" callback that fires whenever one
of its items are activated. The menu item identifier is used to distinguish
between items.
Use this to implement font switching in Terminal. :^) 
							
						 
						
							2019-02-12 10:08:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								9c1c885483 
								
							 
						 
						
							
							
								
								WindowServer: Add locking and fix coalesced invalidation race.  
							
							... 
							
							
							
							WSWindowManager::invalidate() had a bug where it would mark the entire screen
rect as dirty, but it wouldn't scheduled a deferred recompose.
This would cause any subsequent calls to invalidate(Rect) to be coalesced
with the pending compose, but the pending compose never happened. 
							
						 
						
							2019-02-12 09:25:50 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								431e7bf085 
								
							 
						 
						
							
							
								
								PS2MouseDevice: Add current buffer size to debug logging.  
							
							
							
						 
						
							2019-02-12 09:22:55 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								133706d697 
								
							 
						 
						
							
							
								
								Add API's and plumbing for WindowServer clients to make menus.  
							
							
							
						 
						
							2019-02-12 00:52:19 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								14c0f18de9 
								
							 
						 
						
							
							
								
								Kernel: Update block cache on write.  
							
							... 
							
							
							
							If a block is present in the cache, just overwrite the cached block. 
							
						 
						
							2019-02-11 13:18:24 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								26230c0647 
								
							 
						 
						
							
							
								
								WindowServer: Remove "unsafe" flag in WSMessageLoop::post_event().  
							
							... 
							
							
							
							This hack is no longer needed now that we have a Finalizer process that can
take locks without having to worry about the interrupt flag. 
							
						 
						
							2019-02-11 13:05:51 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								f8951afe17 
								
							 
						 
						
							
							
								
								Ext2FS: Fix broken logic for accessing inode and block bitmaps.  
							
							... 
							
							
							
							This logic only worked for the very first block group. 
							
						 
						
							2019-02-11 12:46:56 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								298a49c688 
								
							 
						 
						
							
							
								
								IDEDiskDevice: Detect disk errors and report failure to clients.  
							
							... 
							
							
							
							Previously we'd just fail silently if there was an I/O error of any kind. 
							
						 
						
							2019-02-11 11:38:14 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								443b043b49 
								
							 
						 
						
							
							
								
								WindowServer: Start implementing a menu system.  
							
							... 
							
							
							
							I'm going with a global top-of-the-screen menu instead of per-window menus.
The basic idea is that menus will live in the WindowServer and clients can
create menus via WindowServer requests. 
							
						 
						
							2019-02-11 09:47:10 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								6b2d2cc5e3 
								
							 
						 
						
							
							
								
								Create /dev files for null, full, zero and random.  
							
							
							
						 
						
							2019-02-11 06:59:28 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								18962bf102 
								
							 
						 
						
							
							
								
								Kernel: Oops, the kernel image access validator thought 0x0 was allowed.  
							
							... 
							
							
							
							We forgot to look at the ELF segment type when validating accesses.
We should only consider accesses inside non-empty LOAD segments. 
							
						 
						
							2019-02-11 06:05:12 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								7014daa235 
								
							 
						 
						
							
							
								
								Kernel: Add an LRU block cache.  
							
							... 
							
							
							
							This papers over some of the incredibly inefficient access patterns in the
Ext2FS implementation for a while longer. :^) 
							
						 
						
							2019-02-10 20:07:14 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								ae4811fbae 
								
							 
						 
						
							
							
								
								ProcFS: Show region flags in /proc/PID/vm  
							
							... 
							
							
							
							It's useful to be able to see the readable, writable and bitmap flags. 
							
						 
						
							2019-02-10 13:02:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								6103e374cc 
								
							 
						 
						
							
							
								
								Kernel: Drop the "helper" region after ELF load is finished.  
							
							... 
							
							
							
							The individual segment mappings will keep the VMObject alive. 
							
						 
						
							2019-02-10 12:47:15 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								9860e55047 
								
							 
						 
						
							
							
								
								Kernel: Put page fault logspam behind PAGE_FAULT_DEBUG.  
							
							
							
						 
						
							2019-02-10 11:37:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								5e8d6b1bf4 
								
							 
						 
						
							
							
								
								Base: Rename /users to /home.  
							
							... 
							
							
							
							I didn't like seeing /users next to /usr. /home looks nicer. 
							
						 
						
							2019-02-10 11:18:12 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								2def3d8d3f 
								
							 
						 
						
							
							
								
								LibGUI: Start adding an automatic widget layout system.  
							
							... 
							
							
							
							My needs are really quite simple, so I'm just going to add what I need
as I go along. The first thing I needed was a simple box layout with
widgets being able to say whether they prefer fixed or fill for both
their vertical and horizontal sizes.
I also made a simple GStatusBar so FileManager can show how many bytes
worth of files are in the current directory. 
							
						 
						
							2019-02-10 11:07:13 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								2cf1dd5b6f 
								
							 
						 
						
							
							
								
								Move apps into a top-level Applications/ directory.  
							
							
							
						 
						
							2019-02-10 08:35:01 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								cc04ba9cc9 
								
							 
						 
						
							
							
								
								ProcFS: /proc/sys entries should always be regular 644 files.  
							
							
							
						 
						
							2019-02-10 06:10:01 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								4d5fe39494 
								
							 
						 
						
							
							
								
								FileManager: Start building a file manager.  
							
							
							
						 
						
							2019-02-09 09:22:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								c4e984ca49 
								
							 
						 
						
							
							
								
								Kernel: Allow mmap() with a size that's not a multiple of page size.  
							
							... 
							
							
							
							We just round it up to the next multiple of page size anyway. 
							
						 
						
							2019-02-09 08:44:46 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								fa241747af 
								
							 
						 
						
							
							
								
								Kernel: When donating ticks to a lock holder, cap the donation.  
							
							... 
							
							
							
							When donating ticks to a lock holder, never donate more ticks than
that process would normally get from the scheduler. 
							
						 
						
							2019-02-08 22:06:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								6274208eb9 
								
							 
						 
						
							
							
								
								Ext2FS: Fix bitmap overrun when reaching outside the first block group.  
							
							
							
						 
						
							2019-02-08 17:14:51 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								a6f9ddbb58 
								
							 
						 
						
							
							
								
								Let's have two wallpapers installed so we can test switching.  
							
							
							
						 
						
							2019-02-08 17:14:47 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								d4ba155711 
								
							 
						 
						
							
							
								
								Kernel: Break retain cycle between Inode and VMObject.  
							
							... 
							
							
							
							There's no need for an Inode to keep its corresponding VMObject alive.
Obviously there are huge benefits to keeping a filesystem cache,
but leaking everything is hardly the right strategy. :^) 
							
						 
						
							2019-02-08 16:40:48 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								e1be5a468d 
								
							 
						 
						
							
							
								
								Userland: Add a /bin/pape helper program to switch the desktop wallpaper.  
							
							
							
						 
						
							2019-02-08 16:22:54 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								33d34d9b26 
								
							 
						 
						
							
							
								
								Kernel: Use a Lockable<bool> for sysctl booleans as well.  
							
							
							
						 
						
							2019-02-08 16:18:24 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								f8fc892bac 
								
							 
						 
						
							
							
								
								Remove _fs_contents.stock and generate it on the fly instead.  
							
							
							
						 
						
							2019-02-08 09:56:39 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								a3799cb71e 
								
							 
						 
						
							
							
								
								ProcFS: Add sysctl strings.  
							
							... 
							
							
							
							They are backed by a Lockable<String> to ensure that access is synchronized. 
							
						 
						
							2019-02-08 09:46:46 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								7e623e7ff2 
								
							 
						 
						
							
							
								
								Process: Dump regions when a ring0 process crashes.  
							
							
							
						 
						
							2019-02-08 09:45:53 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								90d3375dc2 
								
							 
						 
						
							
							
								
								WindowServer: Support desktop wallpapers.  
							
							... 
							
							
							
							For now, you don't get to choose the wallpaper, but it's still pretty cool. 
							
						 
						
							2019-02-08 08:45:59 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								2736957701 
								
							 
						 
						
							
							
								
								Ext2FS: Fix dumb bitmap size bug in *_inode_allocation_state().  
							
							
							
						 
						
							2019-02-08 08:43:08 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								736e852525 
								
							 
						 
						
							
							
								
								LibC: Implement enough missing stuff to get bash-5.0 running. :^)  
							
							
							
						 
						
							2019-02-08 02:38:21 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								f4bce03716 
								
							 
						 
						
							
							
								
								Kernel: When validating a string read, validate the pointer first.  
							
							... 
							
							
							
							Calling strlen() on an invalid pointer is just gonna crash the process. 
							
						 
						
							2019-02-08 00:10:01 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								887b4a7a1a 
								
							 
						 
						
							
							
								
								Start working on a simple Launcher app.  
							
							... 
							
							
							
							Let GButton have an optional icon (GraphicsBitmap) that gets rendered in the
middle of the button if present.
Also add GraphicsBitmap::load_from_file() which allows mmap'ed RGBA32 files.
I wrote a little program to take "raw" files from GIMP and swizzle them into
the correct byte order. 
							
						 
						
							2019-02-07 23:17:06 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								71b9ec1ae0 
								
							 
						 
						
							
							
								
								Kernel: Add basic process priority support.  
							
							... 
							
							
							
							For now, the WindowServer process will run with high priority,
while the Finalizer process will run with low priority.
Everyone else gets to be "normal".
At the moment, priority simply determines the size of your time slices. 
							
						 
						
							2019-02-07 12:21:17 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								ee2bb98b88 
								
							 
						 
						
							
							
								
								Kernel: Increase default time slice to 20ms.  
							
							
							
						 
						
							2019-02-07 11:53:45 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andreas Kling 
								
							 
						 
						
							
							
							
							
								
							
							
								dc7f257c01 
								
							 
						 
						
							
							
								
								Kernel: Remove a bunch of unnecessary InterruptDisablers.  
							
							
							
						 
						
							2019-02-07 11:24:09 +01:00