summaryrefslogtreecommitdiff
path: root/Userland/Services/Taskbar
AgeCommit message (Collapse)Author
2022-09-12Everywhere: Use my very shiny serenityos.org email :^)networkException
2022-09-08Taskbar: Set TaskbarButton checkablethankyouverycool
2022-08-26LibGUI+Taskbar+WindowServer: Prevent minimization when blockedthankyouverycool
This was intentionally enabled with WindowModes as a new Taskbar convenience, but on second thought, it doesn't add up visually. Taskbar buttons show blockers' context menus when available, which is a bit confusing when the window isn't visible. The modeless window's disabled context menu options and inactive title bar also contradict the button. So, this patch reenables the restriction for now. Blocking modals you don't want to answer to immediately can still be tucked away on another workspace.
2022-08-25LibGUI+Taskbar+WindowServer: Remove mode and parent methods from Taskbarthankyouverycool
Taskbar only needs a modeless parent and the activity state of the modal chain to update buttons.
2022-07-15Taskbar: Center buttons again by fixing marginsFrHun
2022-07-12Everywhere: Replace single-char StringView op. arguments with charssin-ack
This prevents us from needing a sv suffix, and potentially reduces the need to run generic code for a single character (as contains, starts_with, ends_with etc. for a char will be just a length and equality check). No functional changes.
2022-07-12Everywhere: Add sv suffix to strings relying on StringView(char const*)sin-ack
Each of these strings would previously rely on StringView's char const* constructor overload, which would call __builtin_strlen on the string. Since we now have operator ""sv, we can replace these with much simpler versions. This opens the door to being able to remove StringView(char const*). No functional changes.
2022-07-06AK: Use an enum instead of a bool for String::replace(all_occurences)DexesTTP
This commit has no behavior changes. In particular, this does not fix any of the wrong uses of the previous default parameter (which used to be 'false', meaning "only replace the first occurence in the string"). It simply replaces the default uses by String::replace(..., ReplaceMode::FirstOnly), leaving them incorrect.
2022-06-28Applications: Remove usages of deprecated implicit conversionsFrHun
These deprecated conversions are currently in place to make the system compile, but they are to be removed soon. This prepares that.
2022-06-17Taskbar: Handle an override theme being activenetworkException
This patch makes taskbar react to an override theme being set by not having any theme in the menu selected.
2022-06-17Taskbar: Update checked state of theme menu on global theme changenetworkException
Previously we would assume that the theme would only change through the taskbar menu. As the theme can also be changed in DisplaySettings, the selected theme in the taskbar menu would get out of sync. With this patch the menu will get updated every time the theme changes and the menu is not shown.
2022-06-02Taskbar: Use default buttons in ShutdownDialogKarol Kosek
2022-06-01Taskbar+Desktop: Add super+D keyboard shortcutOlivier De Cannière
This shortcut has the same effect as pressing the "Show Desktop" button in the taskbar. This shortcut already exists in Windows.
2022-06-01Taskbar: Add toggle_show_desktop()Olivier De Cannière
This function is added to separate the desktop toggling functionality from the "Show Desktop" button in the taskbar and to enable calling this behaviour via a keyboard shortcut in a later commit.
2022-06-01LibGUI: Fix typo in ConnectionToWindowManagerServerOlivier De Cannière
2022-05-25Userland: Use GUI::Process::spawn_or_show_error() for spawn() from a GUIMacDue
2022-05-25LibCore: Return ErrorOr<pid_t> and support arguments in Process::spawnMacDue
This makes the wrapper more like the rest in LibCore, and also removes the annoying limitation of not supporting arguments. There are three overloads one for String, char const *, and StringView argument lists. As long as there are <= 10 arguments the argv list will be allocated inline, otherwise on the heap.
2022-05-13LibGUI+Userland: Make Dialog::ExecResult an enum classSam Atkins
2022-04-09LibGfx: Move other font-related files to LibGfx/Font/Simon Wanner
2022-04-04ClockSettings+Taskbar: Add settings for taskbar clock formatcflip
2022-04-03DisplaySettings+WindowServer: Allow updating theme without backgroundBen Maxwell
With this change you can now set the theme and background color at the same time in the Display Settings. Before if both were changed before hitting 'apply' the theme background color would overwrite the custom background.
2022-04-02LibGfx: Add list_installed_system_themes() to SystemThemeBen Maxwell
2022-04-01Everywhere: Run clang-formatIdan Horowitz
2022-03-27WindowServer+LibGUI: Expose raw scroll wheel values to applicationscircl
This is useful, for instance, in games in which you can switch held items using the scroll wheel. In order to implement this, they previously would have to either add a hard-coded division by 4, or look up your mouse settings to adjust correctly. This commit adds an MouseEvent.wheel_raw_delta_x() and MouseEvent.wheel_raw_delta_y().
2022-03-24Services: Use default constructors/destructorsLenny Maiorani
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#cother-other-default-operation-rules "The compiler is more likely to get the default semantics right and you cannot implement these functions better than the compiler."
2022-02-25Userland: Rename WindowServerConnection=>ConnectionToWindowServerItamar
This was done with CLion's automatic rename feature.
2022-02-25Userland: Rename WindowManagerServerConnectionItamar
Rename WindowManagerServerConnection=>ConnectionToWindowManagerServer. This was done with CLion's automatic rename feature.
2022-02-25Taskbar: Update ClockWidget FrameShape and adjust dimensionsthankyouverycool
Uses the new Window FrameShape. Fixes some erroneously elided text and incorrect calendar window placement.
2022-02-24Taskbar: Minimize/activate window on Super+Digit eventJan Grau
Handle the SuperDigitKeyPressed event in the taskbar. Toggle the respective taskbar button.
2022-02-16LibCore+Everywhere: Return ErrorOr from ConfigFile factory methodsSam Atkins
I've attempted to handle the errors gracefully where it was clear how to do so, and simple, but a lot of this was just adding `release_value_but_fixme_should_propagate_errors()` in places.
2022-02-11LibConfig: Rename pledge_domains(String) => pledge_domain(String)Vitaly Dyachkov
pledge_domains() that takes only one String argument was specifically added as a shortcut for pledging a single domain. So, it makes sense to use singular here.
2022-01-28Userland: Fix unnecessary heap allocation of singleton objectsDaniel Bertalan
In order to avoid having multiple instances, we were keeping a pointer to these singleton objects and only allocating them when it was null. We have `__cxa_guard_{acquire,release}` in the userland, so there's no need to do this dance, as the compiler will ensure that the constructors are only called once.
2022-01-25Userland: Invoke tzset in applications that care about time zonesTimothy Flynn
In most applications, we invoke tzset once at startup for now. Most of these are short lived and don't need to know about time zone changes. The exception is the ClockWidget in the taskbar. Here, we invoke tzset each time we update the system time. This way, any time zone changes can take effect immediately.
2022-01-21Taskbar: Remove QuickLaunch entries if corresponding file was deletedMaciej
2022-01-21Taskbar: Support arbitrary *files* as QuickLaunch entriesMaciej
2022-01-21Taskbar: Support arbitrary executables as QuickLaunch entriesMaciej
2022-01-21Taskbar: Abstract out quick launch entriesMaciej
... into QuickLaunchEntry class. It will be used to implement adding plain executables to the taskbar. For now, it adds TRY() error handling to app launching :^)
2022-01-20Userland: Add horizontal mouse scroll supportDmitry Petrov
2022-01-12Taskbar: Include `ScreenLayout.h` from `Services` directoryJelle Raaijmakers
While trying to include `Desktop.h` for the SDL2 port, compilation failed on finding this include. Specify the full include path to make it work.
2022-01-10Taskbar: Tweak taskbar button progress bar renderingAndreas Kling
The rects didn't take the "thin cap" button style into account, causing in-button progress bars to look a little off.
2022-01-03Taskbar: Tighten pledged promises, remove incorrect commentbugreport0
2021-12-28Taskbar: Add context menu to remove quicklaunch itemsfaxe1008
This change adds a context menu for each app button to remove items from the quicklaunch section of the Taskbar.
2021-12-28Taskbar: Add dropping of AppFiles to QuickLaunchfaxe1008
This change adds the capability to drop AppFiles to the quick launch section of the Taskbar. All logic was moved to a new QuickLaunchWidget.
2021-11-28Everywhere: Use default execpromises argument for Core::System::pledgeBrian Gianforcaro
2021-11-23Taskbar: Port to LibMain :^)Andreas Kling
This opens up using TRY() for syscalls, Core::Object creation, and even some Vector operations.
2021-11-14Taskbar: Make quicklaunch bar editablefaxe1008
This change adds a ConfigServer Listener to TaskbarWindow. Items in the quicklaunch bar may be added or removed by editing the Taskbar config.
2021-11-13Everywhere: Replace "virtual desktop" => "workspace"Andreas Kling
2021-11-11Everywhere: Pass AK::StringView by valueAndreas Kling
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::try_load_from_file()Andreas Kling
This was used in a lot of places, so this patch makes liberal use of ErrorOr<T>::release_value_but_fixme_should_propagate_errors().
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::scaled()Andreas Kling