[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemacs-commit] qemacs dired.c
From: |
Charlie Gordon |
Subject: |
[Qemacs-commit] qemacs dired.c |
Date: |
Tue, 28 May 2019 00:27:34 -0400 (EDT) |
CVSROOT: /sources/qemacs
Module name: qemacs
Changes by: Charlie Gordon <chqrlie> 19/05/28 00:27:34
Modified files:
. : dired.c
Log message:
disable preview mode on enter from dired pane
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemacs/dired.c?cvsroot=qemacs&r1=1.81&r2=1.82
Patches:
Index: dired.c
===================================================================
RCS file: /sources/qemacs/qemacs/dired.c,v
retrieving revision 1.81
retrieving revision 1.82
diff -u -b -r1.81 -r1.82
--- dired.c 10 May 2017 15:46:16 -0000 1.81
+++ dired.c 28 May 2019 04:27:34 -0000 1.82
@@ -2,7 +2,7 @@
* Directory editor mode for QEmacs.
*
* Copyright (c) 2001-2002 Fabrice Bellard.
- * Copyright (c) 2002-2017 Charlie Gordon.
+ * Copyright (c) 2002-2019 Charlie Gordon.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -87,6 +87,7 @@
/* opaque structure for sorting DiredState.items StringArray */
struct DiredItem {
+ char *fullname;
mode_t mode; /* inode protection mode */
nlink_t nlink; /* number of hard links to the file */
uid_t uid; /* user-id of owner */
@@ -149,6 +150,8 @@
int i;
for (i = 0; i < ds->items.nb_items; i++) {
+ DiredItem *dip = ds->items.items[i]->opaque;
+ qe_free(&dip->fullname);
qe_free(&ds->items.items[i]->opaque);
}
@@ -985,6 +988,7 @@
int plen = strlen(p);
dip = qe_malloc_hack(DiredItem, plen);
+ dip->fullname = qe_strdup(filename);
dip->mode = st.st_mode;
dip->nlink = st.st_nlink;
dip->uid = st.st_uid;
@@ -1007,7 +1011,7 @@
}
/* select current item */
-static void dired_select(EditState *s)
+static void dired_select(EditState *s, int exit_preview)
{
char filename[MAX_FILENAME_SIZE];
DiredState *ds;
@@ -1037,6 +1041,10 @@
if (e) {
#if 1
s->qe_state->active_window = e;
+ if (exit_preview) {
+ /* XXX: should keep BF_PREVIEW flag and set pager-mode */
+ e->b->flags &= ~BF_PREVIEW;
+ }
#else
/* delete dired window */
do_delete_window(s, 1);
@@ -1302,8 +1310,10 @@
/* specific dired commands */
static CmdDef dired_commands[] = {
- CMD0( KEY_RET, KEY_RIGHT,
- "dired-select", dired_select)
+ CMD1( KEY_RET, KEY_NONE,
+ "dired-enter", dired_select, 1)
+ CMD1( KEY_RIGHT, KEY_NONE,
+ "dired-right", dired_select, 0)
CMD0( KEY_TAB, KEY_NONE,
"dired-tab", do_other_window)
/* dired-abort should restore previous buffer in right-window */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemacs-commit] qemacs dired.c,
Charlie Gordon <=