mirror of
https://github.com/davatorium/rofi.git
synced 2024-11-18 13:54:36 -05:00
Small cleanup and add ohcount target.
This commit is contained in:
parent
9c46963002
commit
112e2c2bc5
2 changed files with 61 additions and 30 deletions
|
@ -138,3 +138,8 @@ test: ${bin_PROGRAMS}
|
||||||
|
|
||||||
cppcheck: ${rofi_SOURCES}
|
cppcheck: ${rofi_SOURCES}
|
||||||
cppcheck --std=c99 --platform=unix64 --enable=all -Uerror_dialog -I ${top_srcdir}/include/ $^
|
cppcheck --std=c99 --platform=unix64 --enable=all -Uerror_dialog -I ${top_srcdir}/include/ $^
|
||||||
|
|
||||||
|
.PHONY: ohcount
|
||||||
|
|
||||||
|
ohcount: ${rofi_SOURCES}
|
||||||
|
ohcount -i ${top_srcdir}/source/
|
||||||
|
|
|
@ -82,17 +82,53 @@ unsigned int NumlockMask = 0;
|
||||||
Display *display = NULL;
|
Display *display = NULL;
|
||||||
char *display_str = NULL;
|
char *display_str = NULL;
|
||||||
|
|
||||||
|
static int ( *xerror )( Display *, XErrorEvent * );
|
||||||
|
|
||||||
|
#define ATOM_ENUM( x ) x
|
||||||
|
#define ATOM_CHAR( x ) # x
|
||||||
|
|
||||||
|
#define EWMH_ATOMS( X ) \
|
||||||
|
X ( _NET_CLIENT_LIST_STACKING ), \
|
||||||
|
X ( _NET_NUMBER_OF_DESKTOPS ), \
|
||||||
|
X ( _NET_CURRENT_DESKTOP ), \
|
||||||
|
X ( _NET_ACTIVE_WINDOW ), \
|
||||||
|
X ( _NET_WM_NAME ), \
|
||||||
|
X ( _NET_WM_STATE ), \
|
||||||
|
X ( _NET_WM_STATE_SKIP_TASKBAR ), \
|
||||||
|
X ( _NET_WM_STATE_SKIP_PAGER ), \
|
||||||
|
X ( _NET_WM_STATE_ABOVE ), \
|
||||||
|
X ( _NET_WM_DESKTOP ), \
|
||||||
|
X ( I3_SOCKET_PATH ), \
|
||||||
|
X ( CLIPBOARD ), \
|
||||||
|
X ( UTF8_STRING ), \
|
||||||
|
X ( _NET_WM_WINDOW_OPACITY )
|
||||||
|
|
||||||
|
enum { EWMH_ATOMS ( ATOM_ENUM ), NUM_NETATOMS };
|
||||||
|
const char *netatom_names[] = { EWMH_ATOMS ( ATOM_CHAR ) };
|
||||||
|
Atom netatoms[NUM_NETATOMS];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Structure defining a switcher.
|
||||||
|
* It consists of a name, callback and if enabled
|
||||||
|
* a textbox for the sidebar-mode.
|
||||||
|
*/
|
||||||
typedef struct _Switcher
|
typedef struct _Switcher
|
||||||
{
|
{
|
||||||
|
// Name (max 31 char long)
|
||||||
char name[32];
|
char name[32];
|
||||||
|
// Switcher callback.
|
||||||
switcher_callback cb;
|
switcher_callback cb;
|
||||||
|
// Callback data.
|
||||||
void *cb_data;
|
void *cb_data;
|
||||||
|
// Textbox used in the sidebar-mode.
|
||||||
textbox *tb;
|
textbox *tb;
|
||||||
} Switcher;
|
} Switcher;
|
||||||
|
|
||||||
|
// Array of switchers.
|
||||||
Switcher *switchers = NULL;
|
Switcher *switchers = NULL;
|
||||||
|
// Number of switchers.
|
||||||
unsigned int num_switchers = 0;
|
unsigned int num_switchers = 0;
|
||||||
|
// Current selected switcher.
|
||||||
unsigned int curr_switcher = 0;
|
unsigned int curr_switcher = 0;
|
||||||
|
|
||||||
|
|
||||||
|
@ -115,8 +151,16 @@ static int switcher_get ( const char *name )
|
||||||
|
|
||||||
|
|
||||||
#ifdef HAVE_I3_IPC_H
|
#ifdef HAVE_I3_IPC_H
|
||||||
// Focus window on HAVE_I3_IPC_H window manager.
|
/**
|
||||||
static void focus_window_i3 ( const char *socket_path, int id )
|
* @param socket_path The I3 IPC socket.
|
||||||
|
* @param id The window to focus on.
|
||||||
|
*
|
||||||
|
* If we want to switch windows in I3, we use I3 IPC mode.
|
||||||
|
* This works more better then sending messages via X11.
|
||||||
|
* Hopefully at some point, I3 gets fixed and this is not needed.
|
||||||
|
* This function takes the path to the i3 IPC socket, and the XID of the window.
|
||||||
|
*/
|
||||||
|
static void focus_window_i3 ( const char *socket_path, Window id )
|
||||||
{
|
{
|
||||||
i3_ipc_header_t head;
|
i3_ipc_header_t head;
|
||||||
char command[128];
|
char command[128];
|
||||||
|
@ -192,32 +236,12 @@ void catch_exit ( __attribute__( ( unused ) ) int sig )
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static int ( *xerror )( Display *, XErrorEvent * );
|
/**
|
||||||
|
* @param d The display on witch the error occurred.
|
||||||
#define ATOM_ENUM( x ) x
|
* @param ee The XErrorEvent
|
||||||
#define ATOM_CHAR( x ) # x
|
*
|
||||||
|
* X11 Error handler.
|
||||||
#define EWMH_ATOMS( X ) \
|
*/
|
||||||
X ( _NET_CLIENT_LIST_STACKING ), \
|
|
||||||
X ( _NET_NUMBER_OF_DESKTOPS ), \
|
|
||||||
X ( _NET_CURRENT_DESKTOP ), \
|
|
||||||
X ( _NET_ACTIVE_WINDOW ), \
|
|
||||||
X ( _NET_WM_NAME ), \
|
|
||||||
X ( _NET_WM_STATE ), \
|
|
||||||
X ( _NET_WM_STATE_SKIP_TASKBAR ), \
|
|
||||||
X ( _NET_WM_STATE_SKIP_PAGER ), \
|
|
||||||
X ( _NET_WM_STATE_ABOVE ), \
|
|
||||||
X ( _NET_WM_DESKTOP ), \
|
|
||||||
X ( I3_SOCKET_PATH ), \
|
|
||||||
X ( CLIPBOARD ), \
|
|
||||||
X ( UTF8_STRING ), \
|
|
||||||
X ( _NET_WM_WINDOW_OPACITY )
|
|
||||||
|
|
||||||
enum { EWMH_ATOMS ( ATOM_ENUM ), NUM_NETATOMS };
|
|
||||||
const char *netatom_names[] = { EWMH_ATOMS ( ATOM_CHAR ) };
|
|
||||||
Atom netatoms[NUM_NETATOMS];
|
|
||||||
|
|
||||||
// X error handler
|
|
||||||
static int display_oops ( Display *d, XErrorEvent *ee )
|
static int display_oops ( Display *d, XErrorEvent *ee )
|
||||||
{
|
{
|
||||||
if ( ee->error_code == BadWindow
|
if ( ee->error_code == BadWindow
|
||||||
|
@ -336,7 +360,9 @@ KeySym sshdialog_keysym;
|
||||||
Window main_window = None;
|
Window main_window = None;
|
||||||
GC gc = NULL;
|
GC gc = NULL;
|
||||||
|
|
||||||
// g_malloc a pixel value for an X named color
|
/**
|
||||||
|
* Allocate a pixel value for an X named color
|
||||||
|
*/
|
||||||
static unsigned int color_get ( Display *display, const char *const name )
|
static unsigned int color_get ( Display *display, const char *const name )
|
||||||
{
|
{
|
||||||
int screen_id = DefaultScreen ( display );
|
int screen_id = DefaultScreen ( display );
|
||||||
|
|
Loading…
Reference in a new issue