[Build] Start refactor
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
import Audio from './modules/Audio/Audio';
|
||||
import {
|
||||
BatteryBox
|
||||
} from './modules/Battery';
|
||||
import Bluetooth from './modules/Bluetooth/Bluetooth';
|
||||
import Brightness from './modules/Brightness/Brightness';
|
||||
import {
|
||||
Gtk
|
||||
} from 'astal/gtk4';
|
||||
import Network from './modules/Networking/Network';
|
||||
import Player from './modules/Player/Player';
|
||||
import Power from './modules/Power';
|
||||
import SysTray from './modules/SysTray';
|
||||
import {
|
||||
exec
|
||||
} from 'astal';
|
||||
|
||||
const QuickActions = () => {
|
||||
const popover = new Gtk.Popover( {
|
||||
'cssClasses': [ 'quick-actions-wrapper' ]
|
||||
} );
|
||||
|
||||
popover.set_child( renderQuickActions() );
|
||||
|
||||
return popover;
|
||||
};
|
||||
|
||||
const renderQuickActions = () => {
|
||||
const user = exec( '/bin/sh -c whoami' );
|
||||
const profile = exec( '/bin/fish -c get-profile-picture' );
|
||||
const cwd = exec( 'pwd' );
|
||||
const um = Power.UserMenu();
|
||||
|
||||
return (
|
||||
<box visible cssClasses={[
|
||||
'quick-actions',
|
||||
'popover-box'
|
||||
]} vertical>
|
||||
<centerbox
|
||||
startWidget={
|
||||
<button
|
||||
onClicked={() => um.popup()}
|
||||
cssClasses={[ 'stealthy-button' ]}
|
||||
child={
|
||||
<box>
|
||||
{um}
|
||||
<Gtk.Frame
|
||||
cssClasses={[ 'avatar-icon' ]}
|
||||
child={
|
||||
<image
|
||||
file={
|
||||
profile !== ''
|
||||
? profile
|
||||
: cwd
|
||||
+ '/no-avatar-icon.jpg'
|
||||
}
|
||||
></image>
|
||||
}
|
||||
></Gtk.Frame>
|
||||
<label label={user}></label>
|
||||
</box>
|
||||
}
|
||||
></button>
|
||||
}
|
||||
endWidget={
|
||||
<box
|
||||
hexpand={false}
|
||||
>
|
||||
<BatteryBox></BatteryBox>
|
||||
<SysTray.SystemTray></SysTray.SystemTray>
|
||||
<Power.Power></Power.Power>
|
||||
</box>
|
||||
}
|
||||
></centerbox>
|
||||
<Gtk.Separator marginTop={10} marginBottom={20}></Gtk.Separator>
|
||||
<box>
|
||||
<Bluetooth.BluetoothModule></Bluetooth.BluetoothModule>
|
||||
<Network.Network></Network.Network>
|
||||
</box>
|
||||
<Gtk.Separator marginTop={10} marginBottom={10}></Gtk.Separator>
|
||||
<Brightness.BrightnessModule></Brightness.BrightnessModule>
|
||||
<Audio.AudioModule></Audio.AudioModule>
|
||||
<Player.PlayerModule></Player.PlayerModule>
|
||||
</box>
|
||||
);
|
||||
};
|
||||
|
||||
// TODO: Expose additional functions to be usable through CLI
|
||||
export default {
|
||||
QuickActions,
|
||||
};
|
||||
Reference in New Issue
Block a user