Commit Graph

315 Commits

Author SHA1 Message Date
Sebastian Ramacher
ba11e68e94 Remove those NOTREACHED comments 2010-10-13 09:02:59 +02:00
Sebastian Ramacher
da261141fd Add noreturn attribute to out_of_memory (closes #43)
Add __attribute__((noreturn)) to out_of_memory if supported by the compiler
(gcc, icc and clang).
2010-10-11 19:54:42 +02:00
Sebastian Ramacher
9d00d67ed2 Apply patches from #43
* Protect LENGTH with surrounding parantheses.
* Use foo(void) for functions taking no arguments.
* Remove dead assignments.

Thanks to kaworu.
2010-10-11 19:41:43 +02:00
Sebastian Ramacher
3210e5be28 some error handling and close handle before deleting the temporary file 2010-10-04 10:08:21 +02:00
Sebastian Ramacher
9fa858b2ff don't hardcode stdin fileno 2010-10-04 09:57:46 +02:00
Sebastian Ramacher
ff0adf4ddc correctly define _BSD_SOURCE and _XOPEN_SOURCE macros 2010-10-04 09:55:21 +02:00
Sebastian Ramacher
cd08c8be70 fixes for memory issues
Somes fixes for memory related issues. Makes filename and password handling more
robust.
2010-09-27 18:30:45 +02:00
Sebastian Ramacher
6052169921 fix a memory leak 2010-09-27 18:21:26 +02:00
Sebastian Ramacher
b280852f2d revert last commit ... that didn't fix anything 2010-09-27 18:20:48 +02:00
Sebastian Ramacher
88687c3f0a solution for #6?
This could be a solution for #6 but needs some testing first.
2010-09-27 17:50:59 +02:00
Sebastian Ramacher
3002d8e476 read from stdin: really delete temporary file 2010-09-27 17:19:56 +02:00
Sebastian Ramacher
3017534627 support reading from stdin (closes #32)
This is highly experimental but should work in principal. If there is a better
way to dump the contents of stdin to a temporary file, send me a patch, please.
2010-09-27 17:01:09 +02:00
Sebastian Ramacher
660567e7df add function to get home dir if for some weird reason $HOME is not set 2010-09-27 15:57:29 +02:00
Sebastian Ramacher
f7d6e0e6a9 follow XDG specification (closes #35)
Use XDG_* environment variables to locate the config directory and data
directory. Uses ~/.config/zathura and ~/.local/share/zathura as fallback (the
directories specified in config.h's CONFIG_DIR and DATA_DIR respectively) if the
environment variables are not set.

Uncomment the ZATHURA_NO_XDG define in config.h to always use CONFIG_DIR and
DATA_DIR.

One can specify --config-dir and --data-dir to overwrite the precomputed config
and data location.
2010-09-27 15:22:23 +02:00
Moritz Lipp
8bbc184fd0 Fixed printing 2010-08-01 13:40:04 +02:00
Moritz Lipp
d0f7b3218a Fixed segmentation fault when mapping keys 2010-07-30 11:11:43 +02:00
Moritz Lipp
f9e418be4c Fix some memory leaks 2010-07-25 20:26:16 +02:00
Moritz Lipp
2b90f23eae Reset inputbar handler 2010-07-24 00:52:36 +02:00
Moritz Lipp
4be866a0ef Change to NORMAL mode in isc_abort 2010-07-24 00:52:06 +02:00
Moritz Lipp
5e352124fb Allow configurable modes 2010-07-24 00:51:47 +02:00
Moritz Lipp
56284b9fd1 Fixed some quoating issues
Thanks to Sebastinas
2010-07-23 14:06:05 +02:00
Moritz Lipp
68fc126c8a Specify configuration directory
With this commit it is possible to pass the path to an configuration
directory. Thanks to Sebastinas

Other changes:
  * Updated Makefile
  * Update Manpage
2010-07-22 23:40:55 +02:00
Moritz Lipp
622a635075 Read global configuration file
Thanks to Sebastinas
2010-07-22 23:27:17 +02:00
Moritz Lipp
802c1ae24e Updated clear command 2010-07-20 20:42:33 +02:00
Moritz Lipp
d4cd5c22a2 Began to clean up some memory issues in the complete function (TODO) 2010-07-18 20:08:51 +02:00
Moritz Lipp
3bcc7b28e6 Fixed some memory issues 2010-07-18 19:52:05 +02:00
Moritz Lipp
4533e58388 Escape uri/filename in open_uri/cmd_print 2010-07-15 22:39:48 +02:00
Moritz Lipp
25f2f942e8 Fix segmentation fault in nav_index 2010-07-13 08:36:16 +02:00
Moritz Lipp
eae4e48877 Delete line to start
Thanks to n0nsense
2010-07-08 12:35:57 +02:00
Moritz Lipp
40a0a7cf9c Updated completion 2010-07-05 17:57:19 +02:00
Moritz Lipp
6d321e2ec5 Optional parameters for print command 2010-07-05 12:35:38 +02:00
Moritz Lipp
2dde57fcd7 Improved completion 2010-07-04 21:47:19 +02:00
Moritz Lipp
7da1a65b2f Fixed completion groups 2010-07-04 11:19:43 +02:00
Moritz Lipp
9e58af0113 Simplified development of cc functions 2010-07-04 10:35:15 +02:00
Moritz Lipp
2f027ed1ad Define number of completion items 2010-07-04 10:25:11 +02:00
Moritz Lipp
ab2288b241 Completion fix 1 2010-07-03 19:10:07 +02:00
Moritz Lipp
d4dd021eab Smooth scrolling
With this commit it is possible to activate a smoother scrolling
by setting smooth_scrolling in the zathurarc file to e.g. 2.0.
2010-06-27 09:38:48 +02:00
Moritz Lipp
9bb9e495f6 Append slashes to directories in cc_open
This patch appends slashes to directories in cc_open. In addition
lines in zathurarc that do not end with a new line won't be
ignored anymore.

Thanks to Trundle
2010-06-24 14:07:26 +02:00
Moritz Lipp
ad5dcd0e70 Updated statusbar string manipulation 2010-06-22 01:57:08 +02:00
Moritz Lipp
2f1f105f73 Set show_inputbar/statusbar 2010-06-21 21:00:59 +02:00
Moritz Lipp
d7c50dc1a0 Clean event->state 2010-06-21 18:27:44 +02:00
Moritz Lipp
90182e55d0 Restore adjustment after reloading the document 2010-06-21 16:27:38 +02:00
Moritz Lipp
403c63c510 Fix shortcut evaluation 2010-06-21 16:19:06 +02:00
Moritz Lipp
3604922a95 Behaviour when buffer is not empty
This commit does not allow every shortcut
when the buffer is not empty
2010-06-19 16:42:53 +02:00
Moritz Lipp
5db3407822 Clean event->state
Thanks to vimprobable
2010-06-19 16:19:40 +02:00
Moritz Lipp
d631c27f8c Clean up shortcuts 2010-06-19 10:33:36 +02:00
Moritz Lipp
fcceffa973 Update shortcut detection 2010-06-19 09:58:40 +02:00
Moritz Lipp
0c0050b111 Bindings for special keys
This commit makes it possible to define and use special keys
like <Space> on their own or in combination with a modifier:
<C-<Space>>.

In addition the evaluation of the keypress has been changed, so
that the order of the bindings do not matter any longer.
2010-06-18 12:58:20 +02:00
Moritz Lipp
5677083579 Set adjust_open and map zoom command 2010-06-18 11:03:11 +02:00
Moritz Lipp
52f747a9c1 Do not process empty lines
This patch checks the length of a line in the zathurarc file: If
the line is empty it wont be processed to prevent a segmentation
fault.

Thanks to escherdragon.
2010-06-18 10:35:15 +02:00
Moritz Lipp
3f6c19bbed Merge branch 'zathurarc'
Conflicts:
	zathura.c
2010-06-17 00:53:41 +02:00
Moritz Lipp
8df70f0e83 Arguments and mode for mappings
It is now possible to define an argument and an additional
mode for the mapping.
2010-06-17 00:37:43 +02:00
Moritz Lipp
31d10fa0f0 Simple map function without any parsing 2010-06-16 23:13:25 +02:00
Moritz Lipp
b687cce13c Added error message 2010-06-16 22:52:28 +02:00
Moritz Lipp
ece73d6c1a Introduce a shortcut list
This commit introduces a shortcut list that is used
now to check given keybindgins: On the contrary to
the static shortcut array it can be easily modified
and extended.

In addition some malloc-checks have been introduced
and a named shortcut list that will be used to evaluate
the cmd_map parameters.
2010-06-16 22:46:02 +02:00
Moritz Lipp
de7131a811 Added blank map function 2010-06-16 21:50:28 +02:00
Moritz Lipp
824b56a032 Support for tabbed
This commit makes it possible to use zathura inside of tabbed by
running zathura with the -e argument.
2010-06-16 20:25:08 +02:00
Moritz Lipp
5ac14daf6b More options available in zathurarc
This commit makes much more settings available in the
zathurarc file.
2010-06-15 12:50:43 +02:00
Moritz Lipp
59a6c7c560 Update sc_reload behaviour 2010-06-15 10:17:38 +02:00
Moritz Lipp
959fdb56d3 Check document health in sc_reload
This hack checks if the PDF file is damaged when
zathura tries to automatically reload it. Now even
if the document is damaged, zathura does not close
the current document session.
2010-06-15 09:39:22 +02:00
Moritz Lipp
5b95da172f Introduced zathurarc 2010-06-14 21:52:19 +02:00
Moritz Lipp
0a20bb6218 Define colors and fonts with the set function
With this changes it is possible to set the colors
with the :set function.
2010-06-14 21:06:26 +02:00
Moritz Lipp
f9f5e1b667 Update scroll behaviour for half/full page scrolling 2010-06-14 17:22:06 +02:00
Moritz Lipp
a59443af05 Introduced page-wise scrolling
It is now possible to scroll one page or an half page up or down.
2010-06-14 17:16:10 +02:00
Moritz Lipp
b61b8ac2b6 Updated sc_scroll behaviour 2010-06-13 16:39:46 +02:00
Moritz Lipp
c441af5ed5 Change window title to filename 2010-06-12 09:47:07 +02:00
Moritz Lipp
f3e57c633d Prevent buffer overflow in realpath
This patch prevents a buffer overflow in the
realpath function.

Thanks to Abel Abraham Camarillo Ojeda
2010-06-06 19:27:10 +02:00
Moritz Lipp
62937222af Updated print command 2010-06-03 20:05:17 +02:00
Moritz Lipp
6f6478b0ad Added reload shortcut 2010-06-03 18:12:45 +02:00
Moritz Lipp
2efdabc6a0 Use GFileMonitor instead of inotify 2010-06-03 18:05:34 +02:00
Moritz Lipp
46e1a7c155 Fix toggle index 2010-06-03 17:11:49 +02:00
Moritz Lipp
9a5f94df41 Free some strings 2010-05-25 20:16:12 +02:00
Moritz Lipp
7a4c105705 Fixed off-by-one error 2010-05-25 09:03:02 +02:00
Moritz Lipp
fab51efea3 Enter password dialog
If the user tries to open an encrypted file, zathura aks for the password
in form of a dialog.
2010-05-24 21:26:40 +02:00
Moritz Lipp
b6f367612b Fixed cmd_open 2010-05-24 17:25:12 +02:00
Moritz Lipp
9936e31095 Added fullscreen mode for special shortcuts 2010-05-24 11:41:08 +02:00
Moritz Lipp
ecfe451807 Fullscreen
It is now possible to enable a fullscreen mode.
2010-05-24 09:38:54 +02:00
Moritz Lipp
f0c0c7b8ee Fixed search result highlighting 2010-05-19 12:13:28 +02:00
Moritz Lipp
eadca8d216 Scroll after switching page 2010-05-18 23:11:38 +02:00
Moritz Lipp
b5531fed3e Fixed redrawing search result 2010-05-18 22:24:15 +02:00
Moritz Lipp
742f687da6 Merge branch 'mouse' of 93.90.177.129:zathura into mouse
Conflicts:
	config.def.h
	zathura.c
2010-05-18 01:09:59 +02:00
Moritz Lipp
af4a487da7 Rebase from master 2010-05-18 01:01:52 +02:00
Moritz Lipp
b33e33fd36 Custom selection style 2010-05-18 00:59:50 +02:00
Moritz Lipp
c38d89bb15 Select right text in rectangle
With this commit zathura selects the text in the selected
rectangle and copies it to the clipboard.
2010-05-18 00:59:23 +02:00
Moritz Lipp
ca9a381bb0 Calculate drawing rectangle and copy text to cb
This commit calculates the rectangle that will be drawn
correctly. Now the mapped rectangle is calculated wrong,
but it gets the text of the document and copies it to
the clipboard.
2010-05-18 00:59:23 +02:00
Moritz Lipp
6e0616d35b Draw marked area
This commit draws an rectangle in the marked area.
2010-05-18 00:58:25 +02:00
Moritz Lipp
7007394634 Added GtkEventBox to catch mouse events
This commited introduces a GtkEventBox called document
that is responsible for catching all mouse events like
"released" or "motion".
2010-05-18 00:58:12 +02:00
Moritz Lipp
742c9770a2 Implemented scrolling 2010-05-18 00:57:37 +02:00
Moritz Lipp
6b852bec6d Scroll and click event callbacks defined
Two callbacks for "scroll" and "click" events
has been defined and connected to the view.
2010-05-18 00:57:37 +02:00
Moritz Lipp
d2973805c0 Custom selection style 2010-05-18 00:48:46 +02:00
Moritz Lipp
ee182e035a Select right text in rectangle
With this commit zathura selects the text in the selected
rectangle and copies it to the clipboard.
2010-05-18 00:22:42 +02:00
int3
ac0445457c Fix leak in State.pages 2010-05-14 17:30:00 +08:00
Moritz Lipp
1192099f65 Do not redraw search results 2010-05-13 11:39:20 +02:00
Moritz Lipp
5d7f332909 Fixed sc_follow 2010-05-13 11:36:05 +02:00
Moritz Lipp
fe3de42925 Merge branch 'master' of 93.90.177.129:zathura 2010-05-13 11:31:45 +02:00
Moritz Lipp
b2e511692d Highlight results: Wrong coordinates
This patch fixes the wrong re-recalculation of the
search item - rectangles.
2010-05-13 11:31:02 +02:00
int3
2cb8b250fa Fix some locking issues
Replaced document_lock with a more general pdf_obj_lock
2010-05-12 18:27:15 +08:00
Moritz Lipp
ebf76efdd6 Removed unnecessary check 2010-05-11 22:06:07 +02:00
Moritz Lipp
88d76762f5 Fixed typo on mutex 2010-05-11 20:55:21 +02:00
Moritz Lipp
5a0e067dce Highlight search results again
This commit is a incomplete patch to highlight the search
results again.
2010-05-11 20:45:47 +02:00
Moritz Lipp
bdc6f33325 Escape filenames 2010-05-11 20:09:20 +02:00
Moritz Lipp
473e51b8dc Fix document update feature 2010-05-09 22:28:25 +02:00
Moritz Lipp
0b2c7c3a12 Activate label mode only when reasonable
This patch checks while opening the pdf document
if it is reasonable to activate the goto label mode:
Sometimes all labels match their page number and then
the label goto mode will slow the navigation down.
2010-05-06 20:31:53 +02:00
Moritz Lipp
63c0312b57 Optional page offset mode
This commit is build on the idea of Renato Florentino to be able to
correct the page offset that some documents have. His patch, where
most of the code has been adapted to this commit ( thanks! ), made
it able to correct the current page and automatically calculate the
correct page offset. Now this patch will introduce a third mode to
the bcmd_goto command: You are now able to set the page directly,
calculate it over the offset or search the labels for it.
2010-05-05 20:05:06 +02:00
Moritz Lipp
5e45c8d608 Use labels in buffered goto command
The page labels are now used in the buffered command bcmd_goto, so
if this option is enabled and you try to reach page number 20, zathura
first seraches for a label named like that and moves to that page instead
of moving to page 20 in the document.
2010-05-05 12:51:18 +02:00
Moritz Lipp
52b4eb464f Added page labels
With this commit it is possible to show and use the labels of a page,
which makes it possible to use a page offset. E.g.: Sometimes the page
numbers written on the page in the document differ from the order in the
file, which can be annoying by e.g. trying to go to the page number >20<
that is instead page number >24< in the document.
2010-05-05 12:36:14 +02:00
Moritz Lipp
e4f80b864b Keyboard navigation for the index
This patch provides the functionality to browse through the index
via the keyboard hence the mouse is not needed anymore. The original
author of this patch is int3 <jezreel@gmail.com>, in addition there
has been introduced a fix solving problems with named destinations.
2010-04-27 16:07:49 +02:00
Moritz Lipp
273ba0c642 Updated key bindings
This commit fixes a typo concerning the scrolling command and adds
additional bindings for the spacebar, the arrow keys and two keys
you find on thinkpad keyboards.
2010-04-27 11:28:17 +02:00
Moritz Lipp
e17a8b433a Calculate drawing rectangle and copy text to cb
This commit calculates the rectangle that will be drawn
correctly. Now the mapped rectangle is calculated wrong,
but it gets the text of the document and copies it to
the clipboard.
2010-04-13 09:47:47 +02:00
Moritz Lipp
97a878a317 Draw marked area
This commit draws an rectangle in the marked area.
2010-04-13 00:22:56 +02:00
Moritz Lipp
68d74e09f8 Added GtkEventBox to catch mouse events
This commited introduces a GtkEventBox called document
that is responsible for catching all mouse events like
"released" or "motion".
2010-04-12 23:55:14 +02:00
Moritz Lipp
f28700ea46 Activate incremental search
This commit reactivates the incremental search and defines
that special commands that are set get called all the time
an input occurs are not evaluated in the activate section.
2010-04-12 19:59:55 +02:00
Moritz Lipp
f8eb8b7a9f Implemented scrolling 2010-04-12 19:38:07 +02:00
Moritz Lipp
cc3bb4d494 Fixed zoom function
This commit repairs the zoom function that did not work through the
automatic adjust patch.
2010-04-12 19:30:48 +02:00
Moritz Lipp
8394bd8dcc Scroll and click event callbacks defined
Two callbacks for "scroll" and "click" events
has been defined and connected to the view.
2010-04-12 19:22:47 +02:00
Moritz Lipp
e5afcbd01e Check for opened document in cb_draw 2010-04-12 17:36:58 +02:00
Moritz Lipp
e31857a082 Automatically recolor document on startup
This commit adds an additional setting that is used
to control the recoloring of the document on startup.
2010-04-12 09:36:14 +02:00
Moritz Lipp
7e46030848 Auto-adjustment when opening a document
This commit fixes the automatic adjustment of the view
when opening a document.
2010-04-12 09:31:56 +02:00
Moritz Lipp
a2d4a9e6a7 version 0.0.3 2010-04-11 21:29:43 +02:00
Moritz Lipp
0152352647 Implemented the save function
The document gets saved to the given path.
2010-04-11 21:12:30 +02:00
Moritz Lipp
3999458f11 Fix toggle_index: WIDGET_REALIZED_FOR_EVENT error
Clicking on an arrow in the index tree view caused an
"changed" event that was liable to crash zathura. This
commit cleans up the sc_toggle_index command and fixes
the described error by pre-selecting the first item in
the tree.
2010-04-11 20:56:16 +02:00
Moritz Lipp
a2309feacf Follow internal links or upen URI in browser
This commit finishes the follow command by adding the functionality
of follow links / or open them with a web browser.
2010-04-11 14:18:49 +02:00
Moritz Lipp
a612ae3ae3 Parse hint token and validate it
The entered token is parsed for an integer and
validated for a correct hint id.
2010-04-11 12:53:45 +02:00
Moritz Lipp
1d3bae94f4 Update inputbar handler
If the follow command has been activated, zathura changes the
"activate" handler of the inputbar to parse the link zathura should
follow.
2010-04-11 12:31:18 +02:00
Moritz Lipp
fbbd4bb3a6 Introduced sc_follow command
This command scans the current page for links, highlightes and
numerates them.
2010-04-11 12:00:27 +02:00
Moritz Lipp
f64b82919a Show/hide the document information
This patch fixes the document information feature, now it is
possible to open up the document information and hide it again.
2010-04-11 11:18:33 +02:00
Moritz Lipp
f928221f30 Recolor the page instead of inverting the colors
This patch makes it possible to define two colors
that are used for recoloring the document pages instead
of the classic color reverting.

For the old behaviour set recolor_darkcolor to "#FFFFFF"
and recolor_lightcolor to "#000000".

All credit of this commit belongs to fedcer (fedcer@gmail.com).
2010-04-11 10:47:09 +02:00
Moritz Lipp
d5228eba92 Search function and some memory leaks
This patch fixes the search function and resolves
some memory leaks and includes following commits of
int3's repository:

  * Fix up some mutexes
  * Cleaned up some memory leaks
  * Escape filenames
  * Remove all threading operations
  * Make search thread properly without crashes and deadlocks
  * Re-enabled inotify auto-update
  * Clean up unused lock

All credit of this commit belong to int3 (jezreel@gmail.com)
for his effort and work for this project. Thank you.
2010-04-10 14:45:48 +02:00
Moritz Lipp
0fba6ee9a3 Highlight search results 2010-03-28 20:59:25 +02:00
Moritz Lipp
f84f6a42f8 Updated search function
Incremental search is disabled now by default
2010-03-08 21:49:52 +01:00
Moritz Lipp
c3b3403a24 Updates search function
Do not use pthread_cancel to stop the search thread
2010-03-08 21:10:39 +01:00
Moritz Lipp
b460faf198 Auto-refresh window
The window refreshes itself now when the document changes.
2010-03-08 20:52:39 +01:00
Moritz Lipp
7b1bc17b1e Reload modified PDF document
This commits add the functionality that when the PDF file has been
rewritten in the background (e.g.: from another program), zathura
reloads the document to refresh the page.
2010-03-08 20:08:59 +01:00
Moritz Lipp
480469dcd6 Updated manpage 2010-02-15 02:33:53 +01:00
Moritz Lipp
b6c5b1e5bf Replace visible check 2010-02-02 20:37:09 +01:00
Moritz Lipp
08f68723b6 Updated index links 2010-02-02 17:17:03 +01:00
Moritz Lipp
2b072aa896 Fixed opening files containing spaces
Now it is possible to open files even if the contain white spaces. If
they do need a password, you can set it with the command: ":set password"
or specify it on startup: "./zathura file password".
2010-02-02 15:27:37 +01:00
Moritz Lipp
0c5f0dfb0c Delete bookmark 2010-01-31 21:24:33 +01:00
Moritz Lipp
db76477a18 Add, save and open bookmarks
It is now possible to save bookmarks with a specific names for a
document, so you can jump easily to important sections of the pdf
later on.
2010-01-31 21:07:27 +01:00
Moritz Lipp
539331a084 Save last viewed page in bookmark file 2010-01-31 12:35:49 +01:00
Moritz Lipp
f3858ac26e Open (and create) key file 2010-01-31 11:44:33 +01:00
Moritz Lipp
31672cd0ba Create zathura directory 2010-01-31 02:03:28 +01:00
Moritz Lipp
8d449e3ff7 Added support for markers
It is now possible to add markers by using "m" followed by the id key
that should identify the marker. To jump back to the page that is
represented by the marker "'" is used. To toggle between the latest
positions the command "''" is used.
2010-01-30 23:48:36 +01:00
Moritz Lipp
acf114b2ec Delete last character of the buffer
It is now possible to delete the last character of the buffer using the
backspace key
2010-01-29 13:42:24 +01:00
Moritz Lipp
7b17a793c7 Scroll buffer command
Added a buffer command to move to a specific percental
value of the alighment of the view window. E.g.: 25%
2010-01-29 13:18:25 +01:00
Moritz Lipp
c7ebceb83a SF in set function
The function now checks if a parameter is given or not
2010-01-29 11:10:49 +01:00
Moritz Lipp
ad897d2c65 Mistake in the search function
Corrected a little mistake in the search function so that it does not
start the search on the current page
2010-01-28 23:35:42 +01:00
Moritz Lipp
c7ae813201 Autoadjust size on startup 2010-01-28 14:14:01 +01:00
Moritz Lipp
d0190bdac6 Adjust width
Implemented the function to adjust the page size to the width or fit
best in the given window area.
2010-01-28 14:06:27 +01:00
Moritz Lipp
e0f8bdc3b4 Added zoom buffer command
Now you can adjust the zoom level by typing commands like
"25Z" etc.
2010-01-28 13:57:54 +01:00